我有使用Atomikos和JOOQ的Spring启动应用程序(带有多个数据源db1和db2) 我有如下的XML配置,我想将其转换为java配置。
<p>
我已经看到一些stackoverflow问题已经问过这个问题,但它们已经老了,还没有找到任何解决方案。
JavaConfig: Replacing aop:advisor and tx:advice
因此,想要了解所提供的XML配置的精确java配置。
答案 0 :(得分:0)
我得到的解决方案几乎更接近上面的xml配置。 在下面的解决方案中,我将aop应用于bean名称而不是包内的类。
@Bean(name = "transactionInterceptor")
public TransactionInterceptor transactionInterceptor(PlatformTransactionManager platformTransactionManager) {
TransactionInterceptor transactionInterceptor = new TransactionInterceptor();
transactionInterceptor.setTransactionManager(platformTransactionManager);
Properties transactionAttributes = new Properties();
transactionAttributes.setProperty("*", "PROPAGATION_REQUIRED,-Throwable");
transactionAttributes.setProperty("tranNew*", "PROPAGATION_REQUIRES_NEW,-Throwable");
transactionInterceptor.setTransactionAttributes(transactionAttributes);
return transactionInterceptor;
}
@Bean
public BeanNameAutoProxyCreator transactionAutoProxy() {
BeanNameAutoProxyCreator transactionAutoProxy = new BeanNameAutoProxyCreator();
transactionAutoProxy.setProxyTargetClass(true);
transactionAutoProxy.setBeanNames("*Service");
transactionAutoProxy.setInterceptorNames("transactionInterceptor");
return transactionAutoProxy;
}