List插入时一直出现java.lang.NullPointerException错误
在redis做缓存的时候,返回List数组
List插入时一直出现java.lang.NullPointerException错误
List allreplys =null; //这里是错误的写法,每次都是@1处出现空指针异常,定义的时候就是空,当然插不进去数据了
@GetMapping("/getAllAdvice")
public List<Advice> get() {
System.out.println("执行了此方法");
List<Advice> replys =new ArrayList<Advice>();
**//List<Advice> allreplys =null; //这里是错误的写法,每次都是@1处出现空指针异常,定义的时候就是空,当然插不进去数据了**
// 如果length为空的话,就是没有加入过redis,加入过之后才会遍历,
// 因为缓存可能会过期,所以可能会有异常
if (length != 0) {
//try {
System.out.println(length);
for (int i = 0; i < length-1; i++) {
// System.out.println(service.get("reply" + i));
Advice a=(Advice) service.get("reply_" + i);
replys.add(a);//------------------------------------@1
}
// } catch (Exception e) {
// e.printStackTrace();
// }
}
if (length == 0) {
if (replys.isEmpty()) { // 如果缓存中没有的话
System.out.println("从数据库中查找了---");
List<Advice> allreplys = adviceMapper.getAll();
if (allreplys != null) {
length = allreplys.size();
for (int i = 0; i < length-1 ; i++) {
service.set("reply_" + i, allreplys.get(i));
}
return allreplys;
}
}
}
System.out.println("最后返回了");
return replys;
}