定时任务案例总结

该博客介绍了如何使用Redis缓存数据,并通过定时任务实现数据的删除管理。具体包括:1) 添加数据到Redis,然后用定时任务删除年龄大于30岁的记录;2) 更新数据前将其缓存,随后更新并用定时任务清除;3) 存储包含课程信息的数据,定时删除特定条件(如课程为'高数')的条目。
摘要由CSDN通过智能技术生成

需求:

1.将添加的数据缓存到redis 中,用定时任务删除年龄大于30岁的信息。

2.将修改之前的数据缓存到redis中,用定时任务来删除。

3将检查组中包含课程信息的数据缓存到redis中,用定时任务来删除。

第一题::

    @RequestMapping("add")
    public Result add(@RequestBody Actor actor) {
        actorService.add(actor);

        Jedis jedis = jedisPool.getResource();
//        把对象转成JSon 的格式,
        String s = JSON.toJSONString(actor);
        jedis.lpush("list",s);
        return new Result(true, MessageConstant.ADD_CHECKITEM_SUCCESS);
    }

定时删除:

    


    @Autowired
    JedisPool jedisPool;
List<String> list = jedis.lrange("list", 0, -1);
      将缓存中,年龄大于30岁的信息用定时任务删除
//        for (int i = 0; i < list.size(); i++) {
//            Actor actor = JSON.parseObject(list.get(i), Actor.class);
//            if(actor.getAge()>30){
//                jedis.lrem("list",0,list.get(i));
//            }
//        }

第二题

    @RequestMapping("update")
    public Result update(@RequestBody Actor actor) {
//        获取修改之间的id
        Integer id = actor.getId();
//       去数据库查询,
     Actor  a=   actorService.getid(id);
//     转换成JSon格式
        String s = JSON.toJSONString(actor);
        Jedis jedis = jedisPool.getResource();
        jedis.rpush("list",s);

        actorService.update(actor);
        return new Result(true, MessageConstant.EDIT_CHECKITEM_SUCCESS);
    }

定时删除:

   @Autowired
    JedisPool jedisPool;


//        Jedis jedis = jedisPool.getResource();

//        jedis.lpop("list");
//        jedis.close();

第三题

    @Override
    public void add(Student student, Integer[] ids) {
        studentMapper.add(student);
        Integer id = student.getId();
        for (Integer kid : ids) {
            studentMapper.zjin(id,kid);
        }

        List<Ke>  Ke2=studentMapper.zcha(id);
        student.setKe(Ke2);
        Jedis jedis = jedisPool.getResource();
        String s = JSON.toJSONString(student);
        jedis.rpush("list",s);
        jedis.close();
    }

定时删除:

           @Autowired
    JedisPool jedisPool;

 for (String s : list) {
            Student student = JSON.parseObject(s, Student.class);
            List<Ke> ke = student.getKe();

            for (Ke ke1 : ke) {
                if(ke1.getName().equals("高数")){
                    redis.lrem("list",0,s);
                }
            }
        }

好文推荐

大数据Vue项目异常总结

大数据Vue项目单表案例

大数据Vue项目案例总结

 

 如果我的博客对你有帮助,也是你所喜欢的内容,请“点赞”   “评论”  “收藏”   一键三连,就是对我最大的支持 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

明天会更好fjy

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

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

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

打赏作者

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

抵扣说明:

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

余额充值