Spring Boot 与 spring @Transactional 无需启用事务管理即可工作

2024-03-11

在我的 spring boot 应用程序中,spring @Transactional 注释无需显式指定 @EnableTransactionManagement 即可工作。

有官方文档说是自动启用的吗?

或者还有其他事情发生......?

顺便说一句:我正在使用 Spring Data JPA


是的,只要您有此功能即可启用spring-tx以及应用程序中的一些事务资源。如果您正在使用,则有效spring-boot-starter-jdbc or spring-boot-starter-data-jpa,Spring Boot会配置一个DataSource为您启动 Hibernate(在后一种情况下)并配置事务管理。

不是全部”Enable“注释需要显式设置。当我们可以检查并验证合理数量的内容时,为您配置这些内容是有意义的,我们会这样做。在这种情况下,如果您有DataSource您可能想进行交易。如果您有 JPA(并且没有 JTA 基础设施),您可能需要一个JpaTransactionManager)。如果我们自动配置它,最简单的使用方法是通过@Transactional所以在这种情况下我们也会启用它。

我猜你一直要求得到某种“官方”答案,所以这是一个。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Boot 与 spring @Transactional 无需启用事务管理即可工作 的相关文章

随机推荐