ssm想从redis里面取存进去的list集合 但是在实现层里return的字符串类型不一致。下面是我写的代码请帮忙看看该怎么改?
先说想法,调用完接口之后 判断是否存在key值 不存在的话redisUtil.set把值存进去设置好过期时间(这里我直接存的list)不知道对不对,然后接口的实现层里 如果key值存在 那么返回存在redis里的那个list ,如果过期了不存在了 就从新查数据库!避免高并发的
controller里
jtparticipationunitscustom.setLoginid(account.getLoginid());
jtparticipationunitscustom.setStartno(startno);
jtparticipationunitscustom.setEndno(endno);
jtparticipationunitscustom.setProjectcode(account.getProjectcode());
List<JtParticipationUnitsCustom> list = participationService.findJtPagingList(jtparticipationunitscustom);
boolean haskey=redisTemplate.hasKey("participationlist");
if (!haskey){
redisUtil.set("participationlist",list,Long.parseLong("180"));
System.out.println("111111111"+redisUtil.get("participationlist"));
}
int total = participationService.getJtTotalCount(jtparticipationunitscustom);
map.put("rows", list);
map.put("total", total);
return map;
实现层里
@Override
public List<JtParticipationUnitsCustom> findJtPagingList(JtParticipationUnitsCustom entity) {
try {
if (redisTemplate.hasKey("participationlist")){
return redisUtil.get("participationlist");//这行代码有问题 返回类型不正确
}else {
return participationDao.findJtPagingList(entity);
}
} catch (Exception e) {
throw new RuntimeException(e);
}
}
就是不知道是我存值得时候有问题 还是取值取得写法有问题 麻烦帮我看看