-
[郑州|结业弟子]JAVA-田文瑞0
在使用redis的list进行数据缓存的时候应注意:
要想好想放进数组里的元素是什么 是实体 还是list
1、redis的list中存的东西应该是将你查出的实体类list遍历进redis的list缓存中,而不是直接将实体类list直接放入redis的list。
2、直接放入的话会导致redis的list中只有一个对象就是你的“实体类list”,这样你的redis的list长度为一,这与我们需要的redis的list 是很多个实体组成的list 的结果不一致。
public List<< span="">Job> select() {
List<< span="">Job> JobList ;
Object jobRedis = redisCache.lGet("jobRedis",0,-1);
log.info(""+jobRedis);
if ( jobRedis == (null) || ((List) jobRedis).size() == 0 ){
JobList = jobMapper.select();
//设置缓存2秒过期
for (int i = 0; i < JobList.size();i++){
redisCache.lSet("jobRedis",JobList.get(i));
}
log.info("本次查询从数据库中查询........");
}else {
JobList = (List<< span="">Job>) jobRedis;
log.info("本次查询从redis缓存中查询");
}
return JobList;
}编辑于2019-05-05
- 去第 页