CGLIB动态代理简介
一:前序 一开始对动态代理都不懂,一直心里还是很惧怕这个概念,之前也学过,学过就忘了,现在想想之所以忘了,是因为平时在开发中也不会使用到动态代理,那回过头再想想,自己已经做了六年多的开发了,那为什么还要学习这个了,今天想想也许就是技多不压身,其实只有知道的多了,才会在用到的时候,用起来,我想也有种说法是用到的时候再学也可以,但是在平时的开发中,我们很少会用到,可能是我们不知道动态代理,如果知道也许会在平时中使用它。之所以今天想做个总结是想到动态代理还是有很大的用处,只是我之前不知道。 二:CGLIB介绍 下面做个总结,动态代理里面有两种方式,一种是jdk的动态代理,一种是cglib动态代理,这里做个cglib动态代理,jdk的动态代理,将单独写个专题来介绍 CGLIB是一个强大的高性能的代码生成包,CGLIB包的底层是通过使用一个小而快的字节码处理框架ASM,来转换字节码并生成新的类,当然不鼓励直接使用ASM,因为它要求你必须对JVM内部结构包括class文件的格式和指令集都很熟悉,在引入cglibjar包后,也会导入ASMjar包 三:CGLIB实现 springboot支持的事务方式:@EnableTransactionManagement 在启动方法入口的类中添加 spring支持方式 :<aop:aspectj-autoproxy proxy-target-class=