我正在尝试使用Hibernate和Spring在HQL中保存MySQL数据库中的对象。 但是,保存时,这是错误消息:
org.springframework.web.util.NestedServletException:Request 处理失败;嵌套异常是java.lang.NullPointerException
public void addCountry(Country country) throws Exception {
Session session = sessionFactory.openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
//Add new Country object
Country c = new Country();
c.setId(""); //id value is auto into mySQL
c.setCity1(country.getCity1());
c.setCity2(country.getCity2());
session.save(c);
transaction.commit();
} catch (Exception e) {
if (transaction != null) {
transaction.rollback();
}
throw e;
} finally {
session.close();
}
}
答案 0 :(得分:0)
正如juanlumn所说删除setId(“”)为Hibernate会为你创建这个。需要调试以查看哪个对象导致NullPointerException,如需要知道您是否正在获取Hibernate会话,这将告诉您已正确配置Hibernate。你再次传递country作为方法参数,但是通过填充dao本身而不知道原因来保存c。