春季交易管理和proxy-target-class

时间:2011-12-14 04:28:29

标签: java spring

以下是我的AOP xml声明。

<tx:annotation-driven proxy-target-class="true" order="100" />

我没有在服务层使用@Transactional注释。 Still Transaction工作正常,因为我的服务层有一个拦截器。

@Transactional ???

,我们不需要proxy-target-class="true"注释

我正在使用Spring -iBatis

2 个答案:

答案 0 :(得分:0)

如果没有活动事务,您将无法访问数据库。如果您使用的是Spring的hibernate模板或JDBC模板,这些模板将为您打开Transactions。 HibernateTemplate通过HibernateTransactionManager完成此任务。

阅读HibernateTransactionManager以获取更多相关信息或跟踪代码。你会发现一个交易模板开始了。

您将使用@Transactional来定义事务边界,事务传播模式和隔离级别(如果有)。

答案 1 :(得分:0)

事务正常工作的原因是因为事务拦截器内置在Spring AOP代理中,在未经检查的异常情况下自动触发回滚。