苍穹外卖(黑马--自用)

1.day1-开发环境搭建

nginx反向代理的配置方式

apifox在设计时用的接口管理

swagger的是后端开发时的方便测试的接口

常用管理接口文档注解

2.day2

1.需求分析和设计

2.beanutils工具类(实现对象属性拷贝)

3.ThreadLocal(获取登录员工的id)

一次请求就是一个线程

4.分页查询日期格式问题

ctrl+o

5.编辑员工功能

3.day3

6.分类管理功能模块

7.公共字段自动填充

4.day4---菜品分类功能

1.文件上传思路

2.新增菜品思路

有xml文件中,需要获取id值

3.菜品删除模块

4.菜品修改

查询功能,数据回显

修改update功能

5.day5

1.redis--解决店铺状态设置

简介

1

启动服务:redis-server.exe redis.windows.conf

客户端:redis-cli.exe  -h localhost -p 6379 -a 123456

连接本地接口,密码123456

2.5种数据类型

3.操作命令

字符串操作命令

哈希操作命令

列表操作命令

集合操作命令

有序集合操作命令

通用命令

4.redis的java客户端

5.spring data redis的使用方式

6.店铺状态设置分析

6.day6--微信小程序、微信登录等

1.HttpClient

2.微信小程序开发

注册、完善小程序信息、下载开发者工具

3.微信登录流程

7.day7--缓存相关

1.缓存菜品

用redis缓存数据,减少服务器压力

实现思路:每一个dish_1对应一个菜类

调用 redisTemplate实现

@Autowired
    private RedisTemplate redisTemplate;

    /**
     * 根据分类id查询菜品
     *
     * @param categoryId
     * @return
     */
    @GetMapping("/list")
    @ApiOperation("根据分类id查询菜品")
    public Result<List<DishVO>> list(Long categoryId) {

        //构造redis中的key,规则:dish_分类id
        String key = "dish_" + categoryId;

        //查询redis中是否存在菜品数据
       List<DishVO> list = (List<DishVO>)redisTemplate.opsForValue().get(key);

       if(list != null && list.size()>0) {
           //如果存在,直接返回,无须查询数据库
           return Result.success(list);
       }




        Dish dish = new Dish();
        dish.setCategoryId(categoryId);
        dish.setStatus(StatusConstant.ENABLE);//查询起售中的菜品

        //如果不存在,则查询数据库,并将查询到的数据放入redis中
        list = dishService.listWithFlavor(dish);
        redisTemplate.opsForValue().set(key,list);


        return Result.success(list);
    }

2.缓存套餐

spring cache注解----进一步快速处理redis缓存问题

常用注解

spring cache入门案例

主要实现思路

3.添加购物车

需求分析

查询购物车信息时,进行动态查询,判断有无菜品信息等等

​​​​​​​

4.查看购物车

在sky-server的controller下的ShoppingCartController类中加入如下代码:

@ApiOperation("查看购物车")
@GetMapping("/list")
public Result<List<ShoppingCart>> list(){
    List<ShoppingCart> list = shoppingCartService.showShoppingCart();
    return Result.success(list);
}
 在sky-server的service下的ShoppingCartService类中加入如下代码:

List<ShoppingCart> showShoppingCart();
 在sky-server的service的Impl下的ShoppingCartServiceImpl类中加入如下代码:

@Override
public List<ShoppingCart> showShoppingCart() {
    Long userId = BaseContext.getCurrentId();
    ShoppingCart shoppingCart = ShoppingCart.builder()
                    .userId(userId)
                    .build();
    List<ShoppingCart> list = shoppingCartMapper.list(shoppingCart);//只需要传userid即可
    return list;

}

5.清空购物车

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lambertzzz1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值