1.Spring的编程事务和声明事务,分别适用什么场景啊?
2.在团队协作开发中,是使用注解便捷还是配置文件便捷呢?
声明式事务其实非常方便。
编程式事务,在spring3.0之前还有一定生存空间,比如说一个中大型应用中,多个datasource,涉及多个本地transactionManager的时候。但是在3.0之后,@Transactional(value='transactionManagerName') ,就已经很好地解决了这点了,基本上只要你不反感声明式事务,没有特别特殊的事务控制要求,annotation基本是唯一选择。
至于注解的便利性,很多地方讨论过了,基本上最大的好处是“逻辑集中”,明明声明一个service,明明没有其它扩展选择,为什么非要外移到配置中?对应的,配置文件最大的好处在于“分散”,比如说相对复杂的运行环境要求:本地一套、测试一套、发布一套,经常会通过配置文件的替换来实现服务策略的替换,这时候annotation就显得不那么好改变了。(spring3.1已经对此做出了很大的支持,大家可以关注)
对于注解vs配置,我一贯的态度和方案都是:尽可能减少配置文件(因为我们确实没那么多好配的),但是配置文件绝对不为0
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。