前言
java动态代理主要有2种,Jdk动态代理、Cglib动态代理,本文主要讲解Jdk动态代理的使用、运行机制、以及源码分析。当spring没有手动开启Cglib动态代理,即:或EnableAspectJAutoProxy(proxyTargetClass = true),默认使用的就是Jdk动态代理。动态代理的应用范围很广,例如:日志、事务管理、缓存等。本文将模拟Cacheable,即缓存在动态代理中的应用进行讲解。需要注意的是,Jdk动态代理相比起cglib动态代理,Jdk动态代理的对象必