截至目前,我对Spring Transaction有很好的了解,并且成功实现了Spring事务与一个应用服务器并且事务处理正常。但是想知道我们当时是否有两个不同的应用服务器如何使用spring transaction。作为我的了解spring transaction只支持一个带有一个或两个数据源的应用服务器。伙计们请在这种情况下给出建议。
提前致谢
答案 0 :(得分:0)
它几乎相同,在两个应用服务器的情况下你需要两个数据源对象,那里有两个会话工厂和两个事务管理器。执行交易时,您始终可以选择要使用的交易。
For ex: Two data sources :-
1.@Autowired @Qualifier("firstAppServerDBConnection")
DataSource oracleDataSource
2.
@Autowired
@Qualifier("secondAppServerDBConnection")
DataSource mySqlDataSource
Two Session Factory
1.
@Autowired
@Qualifier("firstAppServeroracleSessionFactory")
SessionFactory oracleSessionFactory
2.
@Autowired
@Qualifier("secondAppServermySqlSessionFactory")
SessionFactory mySqlSessionFactory
两位交易经理:
事务管理器相同
Imp方法可以帮助您:
LocalSessionFactoryBean.setDataSource(passDataSource) -- For Dif SessionFactory
HibernateTrasnactionManager.setSessionFactory(passSessionFactory) - For Diff Trasnaction
希望它有道理