浅谈Spring的事务配置注意点

直接上干货
配置事务需要
1.事务管理器
2.配置事务详情
3.配置aop代理
注意点一:
在Controlle层注入Service层的时候,在不配置事务的前提下可以使用service接口和service实现类都可以进行注入
在配置事务的前提下,如果还是使用service实现类来进行注入会造成找不到service实现类的的异常,反之使用service接口进行注入的时候项目会正常启动
why: 原因在于在Spring注入的service层的时候,注入的其实是一个service的事务代理类对象,这个代理类的对象需要被代理类对象和数据源以及事务需要的一些资源进行生成,而Spring生成代理类一般有两种方式,
方式一jdk代理:如果被代理类有接口,会实现这个接口生成代理类对象
方式二:cjlib代理:没有接口,会继承这个类生成代理类
生成的代理类会替代原来Sringioc生成的service的对象进行注入

而Spring的注入方式有两种一是使用id进行注入,和类型注入
生成代理类使用id注入可以排除,如果使用类型进行注入,当service层使用接口进行注入,代理类实现类service层的接口,可以看成类型是一致的所以可以成功注入,反之使用service层的实现类进行注入会造成类型不匹配,而出现错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值