首页 > 解决方案 > Spring Boot @Transactional 和 @RestController

问题描述

我可以在同一个类中使用@Transactional 和@RestController 没有任何问题吗?

@RestController
@RequestMapping("/users")
@Transactional
public class UserController  {

    @Autowired
    private UserRepository userRepository;
    @PersistenceContext
    private EntityManager em;

    @PostMapping
    public ResponseEntity<?> create(@RequestBody @Valid User user, Errors errors) {
    }



}

标签: javaspringspring-bootspring-data-jpa

解决方案


是的,你可以使用。应为该流创建一个新事务。

但是,不推荐这种方法。

推荐的方法是在服务级别使用。原因,因为 aService 可能会调用另一个 Service。


推荐阅读