一、区别
编程式事务:通过编程的方式管理事务,灵活性比较强,但是难维护;
声明式事务:将业务代码和事务管理分离,你只需用注解和XML配置来管理事务;
通俗点来说:声明是事务就是通过注解即配置的方式进行事务的管理,编程式事务就是自己在业务逻辑种编写代码来管理事务
二、spring中更多使用哪种事务管理方式?
更倾向于选择声明式事务管理,因为它对应用代码的影响最小,更符合一个非侵入的轻量级容器的思想。
注:声明式事务相对于编程式事务不足地方是:
- 灵活性差一些,编程式事务管理允许你通过代码控制事务;
- 最细粒度只能作用到方法级别,无法做到像编程式事务那样可以作用到代码块级别