我有一个相当简单的问题。我正在重写使用DAO对象直接访问数据库的非常古老的应用程序。没有业务层(代码不是我的,而且是反码),所以使用connection.setAutoCommit(false)来启动代码中的任何地方的事务。由于安全原因,我不得不重写该项目,所以它不使用数据库连接,而是在J2EE服务器端(在它是独立应用程序,现在是app + j2ee之前)使用webservices和hibernate/jpa。简单 - 我只是将DAO/VO对象移动到webservice服务器,并将sql重写为hql,并将客户端中的DAO替换为webservice客户端。跨多个网络服务交易
但是如何处理交易代码?通常一个事务一个webservice调用。所以我需要一些机制(webservices中的参数?),它可以帮助我在多个webservice调用中引用相同的hibernate事务。这是完全不好的方法,我应该只是移动服务器代码中的交易?
我会以其他方式做 - 重写所有事务代码,我将在内存中处理对象。如果成功,我会打电话给web服务。我试图避免这一点,因为它是在更高的成本..但是。 – Mejmo