如何在Spring Boot应用程序中禁用事务管理器?
我有一个例外:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.transaction.PlatformTransactionManager] is defined因为@Transactional注解(我在其他应用中使用这些注解,所以我不能删除,但是有办法忽略它吗?通过禁用事务管理器?)。
发布于 2014-11-24 22:54:05
我想你有三个选择:
从添加了@EnableTransactionManagement的配置类中删除annotation
在Spring Boot应用程序中,只有在使用JDBC或JPA的情况下才会获得@EnableTransactionManagement,所以实际上应该已经有了一个事务管理器。我能看到的唯一不存在的原因是类路径上有spring-jdbc,但没有数据库。如果你的类路径中已经有了spring-tx和spring-jdbc (看起来就是这样),你只需要添加一个内存中的数据库(例如h2)就可以得到一个事务管理器。这对我来说似乎是最好的解决方案。但您也可以在@EnableAutoConfiguration中排除DataSourceTransactionManagerAutoConfiguration。
https://stackoverflow.com/questions/27103110
复制相似问题