一尘不染

javax.transaction.Transactional与org.springframework.transaction.annotation.Transactional 问问题

spring

我不明白注释javax.transaction.Transactional和之间的实际区别是什么org.springframework.transaction.annotation.Transactional

org.springframework.transaction.annotation.Transactional扩展名javax.transaction.Transactional还是它们具有完全不同的含义?什么时候应该使用它们?@Transactinal在服务层中使用Spring ,在DAO 中使用javax?

谢谢回答。


阅读 1230

收藏
2020-04-15

共1个答案

一尘不染

几年前,Spring定义了自己的Transactional注释以使Spring bean方法具有事务性。

Java EE 7终于做了同样的事情,现在除了EJB方法外,还允许CDI bean方法是事务性的。因此,自Java EE 7起,它还定义了自己的Transactional注释(显然,它不能重用Spring注释)。

在Java EE 7应用程序中,您将使用Java EE批注。

在Spring应用程序中,您将使用Spring批注。

它们的用法是相同的:通知容器(Java EE或Spring)方法是事务性的。

2020-04-15