1.spring实现对事务的控制,使用的是代理的技术.通过生成的代理类来捕捉被代理类(也就是我们编写的类)的异常,决定事务的提交或回滚.从某一角度来说,spring事务是基于异常实现的.对于实现了接口的类,spring默认使用jdk动态代理进行处理,典型例子是系统的service层服务,一般都需要实现接口.对于没有实现接口的类,如web项目中的Controller,spring使用cglib进行代理. 2.最好不要在需要事务控制的方法中,调用本类的其他方法.由于该类需要spring进行事务控制,…