注意:这个问题与我之前的问题有关。
我hibernate.current_session_context_class=thread
在我的 Hibernate 配置中使用并根据需要获取 Hibernate 会话SessionFactory.getCurrentSession()
。所以它会在需要时创建或给我现有的会话,所以我不关心这个。
这一切都很好,但是当我得到 a 时该怎么办HibernateException
,ConstraintViolationException
例如?然后我之前获得的当前会话变得无效,我不能再使用它,甚至不能读取更多数据(根据我读过的许多论坛)。如何丢弃并在特定范围内获取新会话?我认为SessionFactory.getCurrentSession()
第二次打电话仍然会给我同样的无效会话!?