执行list的add方法时报空指针,添加不进去。 - - 学习笔记
执行list的add方法时报空指针,添加不进去。list的结果一直是null,rid可以获取到值。
List<Integer> list = null;
try {
String sql="select rid from tab_favorite where uid=?";
List<Map<String, Object>> mapList = template.queryForList(sql, uid);
for (Map<String, Object> map : mapList) {
Integer rid = (Integer) map.get("rid");
list.add(rid);
}
}
java.lang.NullPointerException
at cn.itcast.travel.dao.impl.FavoriteDaoImpl.findRidByUid(FavoriteDaoImpl.java:52)
at cn.itcast.travel.service.impl.FavoriteServiceImpl.findFavorByUid(FavoriteServiceImpl.java:35)
at cn.itcast.travel.web.servlet.RouteServlet.findFavor(RouteServlet.java:95)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at cn.itcast.travel.web.servlet.BaseServlet.service(BaseServlet.java:24)
原因: list没有实例化
List<Integer> list = new ArrayList<>();