java 动态代理
1.JDK Proxy 动态代理:
- 必须有接口,基于接口创建动态代理对象,如果没有接口,则无法使用JDK动态代理
- MyBatis Mapper 是接口,则使用了JDK Proxy
2.CGLib动态代理
- 可以没有接口,基于类创建动态代理
- 优势就是没有接口也可以进行动态代理
3.Spring的核心功能AOP底层
- 在单独使用Sping:如果有接口就使用JDK Proxy ,如果没有接口就使用CGLib作为动态代理
- 在Spring Boot中,默认优先使用CGLib作为动态代理