首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring事务配置

Spring事务配置
EN

Stack Overflow用户
提问于 2011-07-19 20:52:45
回答 3查看 795关注 0票数 0

通过xml配置Spring transaction时,绑定接口还是绑定具体的类进行事务处理好吗?我认为我们应该为事务处理映射接口,但我在Spring文档中发现了这一点:“Spring团队的建议是只使用@ transaction注释来注释具体的类”。

请分享你的想法。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-19 21:12:13

事务边界是实现细节,因此它们应该由实现而不是接口来指定。

例如,假设在某些复杂情况下,您的某个方法需要使用编程式事务管理(TransactionTemplate)而不是@Transactional。如果你在接口层有@Transactional,这是不可能的。

票数 3
EN

Stack Overflow用户

发布于 2011-07-19 21:11:36

接口是契约。事务性(通常)不是合同的一部分。这是一个实现细节。因此,@Transactional属于实现类,而不是接口。

票数 2
EN

Stack Overflow用户

发布于 2011-07-19 21:15:41

@Transactional注解不是从接口继承的,所以如果您使用不同的代理方法(例如proxy-target-class=true或aspectj),那么您真正的方法将不是事务性的。

参见proxy-aop (用于标准事务注释) http://static.springsource.org/spring/docs/3.0.x/reference/aop.html#aop-understanding-aop-proxies

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6747461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档