在实际应用中很少使用,要手动改service层中的代码 通过TransactionTemplate手动管理事务
开发中推荐使用,代码侵入性最小 Spring的声明式事务是通过AOP实现的
①在applicationContext.xml中配置transactionManager事务管理器 ②为service生成代理类(主要包括事务管理器、属性、目标类等) ③属性有
<prop key=" * ">propagation(传播行为),isolation(隔离级别),readOnly(只读事务),-Exception(回滚),+Exception(不回滚)</prop>
①配置事务管理器 ②配置事务的通知(事务的增强) ③配置切面(包括切入点、切面)
在业务实现类上加上@Transactional注解,它有一些属性,写在后面的()中,例如:
@Transactional(propagation=propagation.required,RollbackFor,noRollbackFor)
①配置事务管理器 ②开启注解事务