【问题标题】:Why doesnt @Transactional and @RequestMapping work together?为什么@Transactional 和@RequestMapping 不能一起工作?
【发布时间】:2016-03-11 19:53:58
【问题描述】:

当我在 @RequestMapping 中包含 @Transactional 注释时,我注意到在 springboot 中 url 映射不会自动配置。

这可能是什么原因造成的?

我想要一个 (C)R(UD) 休息调用在事务中工作的情况。

【问题讨论】:

    标签: spring spring-boot spring-data-jpa


    【解决方案1】:

    如果您的目标是确保您的 CRUD 操作发生在事务中,那么使用 Spring Data JPA,默认情况下会为您完成。例如,创建一个扩展CrudRepository 的存储库接口,您的查询方法将固有地是@Transactional。您可以通过手动注释存储库上的查询方法来自定义 @Transactional 属性,但只有在您想要非默认行为时才需要这样做。

    有关详细信息,请参阅 Spring Data JPA 文档。 http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#transactions

    【讨论】:

    • 我明白了。我的问题是为什么会发生这种情况不一定是解决方案。
    • 这只是一个假设,但是用 @Transactional 注释方法会指示 Spring 在您的方法周围创建代理。为了做到这一点,该类需要实现一个接口,至少从我读过的内容来看是这样。我想知道这个过程是否会破坏控制器的行为。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-04
    • 2020-12-31
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    相关资源
    最近更新 更多