【发布时间】:2014-11-24 10:52:41
【问题描述】:
如何在 Spring Boot 应用程序中禁用事务管理器?
我有这个例外:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.transaction.PlatformTransactionManager] is defined
由于@Transactional注解(我在其他应用中使用这些注解,所以无法删除,但有办法忽略它?通过禁用事务管理器?)。
【问题讨论】:
-
你不能从类路径中删除 spring-tx jar(如果你不使用它)?
-
否:ClassNotFoundException org.springframework.dao.DataAccessException
-
为什么需要
DataAccessException?这里没有太多细节可以继续。你怎么可能在没有事务管理器的情况下使用带有@Transactional注释的组件? -
Spring boot 需要
DataAccessException在EmbeddedDatabaseConnectionSee例如。这是因为我添加了@EnableAutoConfiguration(见stackoverflow.com/questions/26634426/…)。 -
我在多个项目共享的接口上使用
@Transactional。一个项目是一个服务器,所以它需要事务。另一个是客户端,通过rmi调用server,所以使用相同的接口,但不需要事务。
标签: java spring spring-boot