使用 2 个事务管理器@EnableTransactionManagement注释
我正在使用注释来配置弹簧而不是xml文件。我正在配置2个具有不同会话工厂和不同事务管理器的数据源。我在这里遇到了一个问题来注释。我在其文档中读到,@Configuration
@EnableTransactionManagement
@EnableTransactionManagement
更灵活;它将回退到容器中任何 Bean 的按类型查找。因此,名称可以是“txManager”,“transactionManager”或“tm”:这根本不重要。PlatformTransactionManager
这意味着无论我给方法起什么名字,它都会总是搜索返回对象的方法,而我有2个事务管理器。现在的问题是,当我测试这个类时,它给我错误:PlatformTransactionManager
org.springframework.beans.factory.NoSuchBeanDefinitionException
:未定义 [] 类型的唯一豆:预期的单个豆子,但发现 2org.springframework.transaction.PlatformTransactionManager
我甚至试图拥有2个不同的配置类,但徒劳无功。在 xml 配置中,情况并非如此。我用两个标签注册了我的两个事务管理器,它工作正常。但在这里不能用注释做同样的事情。<tx:annotation-driven transaction-manager="" />
如果我想在Spring注释配置类中配置2个数据源和2个不同的事务管理器,我该怎么办?