spring事务
蒙太纳奇
如狼一样的不息
展开
-
Spring @Transactional面试题
@Transactional修饰的方法的特点:public方法,且事务内尽可能简单Spring事务是通过AOP实施事务增强的。由于接口的方法是public的,这句要求实现类的实现方法必须是public 的(不能是protect,private等),同时不能使用static的修饰符。即只有public的方法才可以被aop增强。处理过程尽量的简单。尤其是带锁的事务方法,能不放在事务里面的最好不...原创 2019-06-14 15:03:19 · 1302 阅读 · 0 评论 -
Sping事务核心接口
Sping事务核心接口核心模块TransactionDefiniton 事务定义器:用于定义事务的隔离级别,传播行为,只读等信息。PlatformTransactionManager 平台事务管理器:用于commit()或者rollback()事务。TransactionStatus : 事务的状态:savepoint信息,是否新建,是否已完成。Interface Date...原创 2019-06-14 14:59:19 · 148 阅读 · 0 评论 -
Spring的声明式事务,编程式事务
Spring的声明式事务,编程式事务声明式事务:通过aop配置文件的方式优点:将我们从复杂的事务处理中解脱出来,获取连接,关闭连接、事务提交、回滚、异常处理等这些操作都不用我们处理了,Spring都会帮我们处理。缺点:最细粒度作用于方法上,而对于代码块则无能为力。注解事务:直接在Service层的方法上面加上@Transactional注解和声明式事务相同编程式事务:在代码...原创 2019-06-14 14:56:01 · 165 阅读 · 0 评论 -
事务的属性基本属性
ACID: Atomicity 原子性 对于一个事务来讲,要么一起执行成功要么一起失败 Consistency 一致性 事务结束后系统状态是一致的,即不会是部分成功部分失败 Isolation 隔离性 表示各个事...原创 2019-07-26 11:06:03 · 692 阅读 · 0 评论 -
并发事务产生的问题
脏读:读到了别的事务回滚前的脏数据。不可重复读:当前事务先进行了一次数据读取,然后再次读取到的数据是别的事务修改成功的数据。主要是针对update或delete操作,和幻读的语义一致。幻读:事务A根据条件得到N条数据,然后事务B改增添了M条其他的符合A搜索条件的数据,导致事务A再次搜索发现有N+M条数据。主要针对insert操作。...原创 2019-06-14 14:53:14 · 190 阅读 · 0 评论 -
事务的基本概念
基础概念事务的相关解读:用于一组要么一起成功要么一起失败的场景 什么是事务 将一组操作绑定在一起,要么都成功或者都失败的操作 生活中需要事务的案例 转账 事务的目的 保证操作的原子性 操作失败的标准 操作过程出现了异常,导致操作没有执行完...原创 2019-06-14 14:52:20 · 165 阅读 · 0 评论 -
spring架构下tomcat的运行流程
1.Tomcat启动阶段:1.1.加载war包,调用对应的web.xml文件,调用对应的DispatcherServlet,完成如下操作: 创建ioc容器:Map iocMap = new HashMap(); 扫描包:扫描war包中有@Controller,@Service等注解的类; 实例化:将扫描到的类,通过反射进行实例化,并存入iocMap中; 依赖注入:将...原创 2019-06-14 14:40:16 · 257 阅读 · 0 评论 -
表单数据重复提交的几种处理方法
数据重复提交问题 如注册时的表单提交,用户在浏览器点击提交按钮后提交数据,到达sbt.action中。sbt.action完成数据插入后,跳转到注册成功的提示页(转发)。此时客户端浏览器刷新页面,则会重复提交数据。 页面重定向 如注册regist.do完成数据提交之后,通过重定向到registFish.do后展示注册成功页面。此时浏览器的地址已变为registFish...原创 2017-12-13 09:12:46 · 1062 阅读 · 0 评论 -
业务代码:基于spring的银行支付接口模型实现
1.业务逻辑 当用户选择某一特定商品后,点击支付按钮;跳转到对应的支付页面,在用户选择对应的支付银行方式后,在页面实现对应的优惠信息。同时点击支付后,根据银行对应的报文要求,进行支付。2.逻辑分析 3.技术点:工厂模式,反射,spring手动注入,面向对象思想 3.支付接口//支付接口public interface Strategy { ...原创 2018-12-18 14:00:10 · 861 阅读 · 0 评论 -
Spring事务管理总结
spring事务控制的3种方式编程式事务:直接在代码里手动开启事务,手动提交,手动回滚(灵活控制,重复代码太多)。声明式事务:使用SpringAop配置事务,但需要注意的是切入点表达式一定要写正确。注解式事务:直接在Service层的方法上面加上@Transactional注解,一般常用。Spring事务不能回滚的原因3+2:事务配置切入点错误:如Service接口中的方法添加...原创 2019-07-24 16:29:45 · 147 阅读 · 0 评论