Hibernate 第一次查询不到结果,以后能查到

来源:互联网 发布:桌面便签软件 推荐 编辑:程序博客网 时间:2024/04/30 07:56

现象:

插入之后,迅速的更改属性,在2个session中,插入之后DB中有结果,在再次更改属性的时候,要先把上次插入的查出来,并且不能按主键查询,此时查不出结果。

之后再次插入,再次更改属性,都正常了。

步骤:

1 Spring集成Hibernate

2 入库时使用HibernateTemplate().save()

3 更改属性时要先查出来,使用Criteria,并且查询条件中没有主键。现在就没有结果,DB中明明有结果的。


修改:

第3步骤修改为:

return this.getHibernateTemplate().execute(new HibernateCallback<XXXX>(){@Overridepublic XXXXdoInHibernate(Session session) throws HibernateException,SQLException{Query query = session.createQuery("from UserClosed where userId=? and status=? order by closeTime desc,openTime desc");query.setInteger(0,userId);query.setInteger(1,status.getValue());return (XXXX)query.uniqueResult();}});


问题:

不知道这2中查询方式有何不同,有时间在琢磨琢磨各种查询方式的区别。




0 0