有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在一个Hibernate会话中可以有多个事务吗?

在一个Hibernate会话中可以有多个事务吗

我不清楚这是否是允许的。在我的代码中,我有一个长时间运行的线程,从阻塞队列中获取项目,这取决于队列上的内容,它可能需要创建并保存一个hibernate对象,或者可能不需要执行任何操作

每个项目都是不同的,因此,如果项目1已保存,而项目2未能保存,无论出于何种原因,我都不想这样做,以防止项目1被添加到数据库中

因此,最简单的方法是为每个需要创建的项目创建一个新会话、打开事务、保存新对象、提交事务、关闭会话

然而,这意味着为每个项目创建一个新会话,这似乎违背了Hibernates自己的建议,即不按请求进行会话。因此,我的替代方案是在线程中创建一个会话,然后在需要创建新对象时根据需要打开并提交一个新事务。但我没有看到这种方法的例子,我不确定它是否真的有效


共 (0) 个答案