需求:
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);
}
}
}
好文推荐
如果我的博客对你有帮助,也是你所喜欢的内容,请“点赞” “评论” “收藏” 一键三连,就是对我最大的支持