Spring / Spring Data Access
Can I use multiple transaction managers within a spring application?
Yes. @Transactional annotation has the property transactionManager which can be set to specify which transaction manager to be used.
<bean id="transactionManager1" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory1" /> <qualifier value="TM1"/> </bean> <bean id="transactionManager2" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory2" /> <qualifier value="TM2"/> </bean>
public class DAOService { @Transactional("TM1") public void doSomethingWithTransactionManager1() { ... } @Transactional("TM2") public void doSomethingWithTransactionManager2(() { ... } }
More Related questions...