Hibernate会话应用程序管理

Hibernate会话应用程序管理,hibernate,session,Hibernate,Session,我在一个Web java项目中使用Hibernate(4.3.5),在以下情况下,您认为最佳实践是什么: 我在应用程序会话中有一个对象,即登录用户,该用户的内部有一些惰性对象。当我尝试在另一个Hibernate会话(currentSession)中使用this User lazy属性时,我得到一个LazyInitializationException异常 我是否应该将此用户重新附加到筛选器中的CurrentSession(这样我就可以始终使用其任何惰性属性),更改我的用户对象加载策略以获取所有属

我在一个Web java项目中使用Hibernate(4.3.5),在以下情况下,您认为最佳实践是什么:

我在应用程序会话中有一个对象,即登录用户,该用户的内部有一些惰性对象。当我尝试在另一个Hibernate会话(currentSession)中使用this User lazy属性时,我得到一个LazyInitializationException异常

我是否应该将此用户重新附加到筛选器中的CurrentSession(这样我就可以始终使用其任何惰性属性),更改我的用户对象加载策略以获取所有属性(仅在将对象放置在应用程序会话中的选择中),或者做些什么


更多信息:我的hibernate会话范围是线程,我在HttpFilter中初始化它及其事务

是,将其连接到hibernate会话,并对其调用方法以加载惰性属性

session.lock() if the transient object is not changed. 
session.update() if the transient object is changed

上述这些方法将临时对象附加到会话

他们被弃用了。我是否应该使用其他策略?您使用的是哪个版本的Hibernate?4.3(最新版本)。我找到了一种不同的锁的方法,用新的方法做同样的事情。。。buildLockRequest(LockOptions.NONE).lock(usuarioLogado);这在会话中成功地重新连接了对象,没有问题,谢谢