java.lang.NullPointerException 空指针异常
原因分析一:注入失败
注入方式一:
@In("#{gatereviewService}")
private GatereviewService gatereviewService;
注入方式二:
@Autowired
private GatereviewService gatereviewService;
检验方式:一般别人怎么注入,你就怎么注入。比方注入了Dao,你在Dao里打断点,它没有进去,那就是注入失败。
原因分析二:如果List为空或者对象为空,你用List.get()、对象get属性会抛出空指针异常
如下,List是否总是要判空呢?
String supplierName = (String) session .createSQLQuery(sql.toString()).list().get(0);
List判空
if(list.size()>0) {
String supplierName=list.get(0);
return supplierName;
}else {
return "";
}
有或者
if(list!=null&&!list.isEmpty()&&list.size()>0){
}
common.exception.dbexception db数据库异常
原因:org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session
session中有两个不同的对象拥有同一个标识。
解决办法:干掉冲突变量。
引入sessionFactory
@Autowired
SessionFactory sessionFactory;
导包
import org.hibernate.Session;
import org.hibernate.SessionFactory;
使用session
Session session = sessionFactory.getCurrentSession();