动态代理是一种方便运行时动态创建代理,动态处理代理方法调用的机制。
动态代理的实现方式有很多种,主要来说有以下几种方式:
基于JDK提供的动态代理,其主要是利用反射机制,要求有接口
还有基于字节码操作的CGLIB,ASM,javassist等,不需要有接口,生成子类。
那么动态代理有什么的使用场景?
常见的AOP编程就是一种应用,
面向切面编程,将核心业务和非核心业务代码做分离,比如事务,日志,性能检测,这些都是非核心业务。
这样开发人员可以更专注写自己的核心业务代码。
閱讀更多 互聯網十年老兵 的文章