ProxyFactoryBean + XML 早期使用方式(2.0)
比较流行的目前: tx:advice+aop 命名空间 一次配置永久生效 (比较流行,多人使用的,这样容易在实际的项目中遗忘一些问题)
注解: @Transactional 注解控制 (推荐使用,,这样对以后得 优化 维护比较有帮助)
事务方法嵌套:
声明式事务独有的概念, 传播行为 ----一般默认是 这个 : propagation_required 意思是,如果 原有的方法 已经是一个事务了,那么就加入进去, 如果 不是一个事务,那么为该方法 创建一个事务
回滚事务:
抛出运行期异常(runtimeException) 小心不当的 try-catch
注解使用 优点: /** * 使用注解控制事务的优点: * 1.开发团队达成一致约定,明确标注事务方法的编程风格. * 2.保证事务方法的执行时间尽可能短,不要穿插其他网络操作RPC/HTTP请求或者玻璃到事务方法外部. * 因为这样请求httpClient的请求花费的时间太长了,对于事务来说是不好的,特别是高并发来说,所以有也是剥离出来 * 使用了 事务的service 方法应该是 尽量干净的 数据库 事务操作,如果有就剥离出去 再造一个方法。 * 3.不是所有的方法都需要事务.如一些查询的service.只有一条修改操作的service * 只有一个数据的修改 ,插入,这样是不需要事务的。一般来说,是 比如 需要同时插入2条数据的业务 */ @Transactional public SeckillExecution executeSeckill