sky_take_out

day01:

前端网址通过nginx访问后端网址(前后网址不一致),有三个好处:

一是提高访问速度,二是进行负载均衡,三是保障后端安全性

用md5加密了密码 

后端使用knife4j调试,用Swagger生成接口文档(代替tomcat),前端使用yapi 

sky_take_out_第1张图片sky_take_out_第2张图片sky_take_out_第3张图片

day02

添加员工,并用全局变量接收重复命名异常,获取当前用户id课通过ThreadLocal获取

分页功能,mybatis+pagehelper(返回Page<> 对象),分页的时间格式

状态功能,查找语句 

编辑员工,两个接口,先根据id查询,再更新 

导入分类模块 

day03

获取自动填充(先创注解,调用枚举,写aop,加注解) 

 图片上传码云

 菜品及口味模块,分页查询

菜品删除 

 day05

笔记:

Redis是一个基于内存的key-value结构数据库(适用于热点数据)

字符串命令:set key value,get key,setex key seconds value,setnx key value

哈希命令:hset key field value,hget key field,hdel key value,hkeys key,hvals key

列表命令:lpush key values,rpop key,lrange key start stop,llen key

集合命令:sadd key member1 ,smembers key,scard key,sinter key1 key2,sunion key1 key2,srem key member1 member2

有序集合命令:zadd key score1 member1,zrem key member,zrange key start stop withscores,zincrby key increment member

通用命令:keys pattern,del key,exist key,type key

day06

微信登录:controller:由接口文档知其传进来的数据,返回的类型及数据,请求方式,然后根据需求,登录需要返回token,id和user,token由jwt生成,jwt的参数由配置方法注入得到,后通过builders方法写入并返回

service:

day07 

spring cache是一个缓存注解,enablecaching开启缓存注解,cacheable将返回值存入缓存,若没用返回值则调用方法获取,cacheput将返回值存入缓存,cacheevict删除缓存

day08

微信支付:首先调用一个预支付接口,并听过许可证,密钥和临时内网ip加密

day10 

统计营业额模块:

        接收始末日期并返回营业额,

        用到StringUtils的join将集合转为字符串并插入“,”,

        金额用double类型,若输入给mapper的参数考虑可能为空,可用map封装

        

        注意:

        1,用map封装接收的对象

        2,订单有可能金额为空,需对map进项判断

统计新增和总用户模块:

        接收始末日期并返回营业额,

        用到StringUtils的join将集合转为字符串并插入“,”,

        用动态条件接收时间,控制动态条件的语句是执行的先后

统计订单模块:

        用Stream可快速算出集合的总和vaildOrdersCountList.stream().reduce(Integer::sum).get()

        若不同类型无法强转,可将一个值转

销量top10模块:

        若mapper 返回的对象有两个则封装一个对象返回

        可用Stream将对象的方法依次取出并封装到集合

 day12

 

你可能感兴趣的:(苍穹外卖,java)