好奇心重的小伙伴有一种知其然,亦欲知其所以然的特性,我们在spring事务应用中会接触到aop技术,而aop背后隐藏的恰恰是以jdk以及cglib为基础的动态代理技术,博主不才,将自己的学习历程记录于此,希望帮到有需求的同行,其实我们仅需要进行简单的设置,即可输出cglib以及jdk动态代理产生的class文件,然后使用jdt或者其他工具查看生成的动态代理类,以验证理论知识:
System.setProperty(DebuggingClassWriter.DEBUG_LOCATION_PROPERTY, "D:\class"); --该设置用于输出cglib动态代理产生的类
System.getProperties().put("sun.misc.ProxyGenerator.saveGeneratedFiles", "true"); --该设置用于输出jdk动态代理产生的类