Spring中代理的两种方式对比

Spring中AOP的两种动态的两种方式

1.是用java反射机制,只能对实现了接口的类生成代理,而不能针对类

2.cgLib 可以不用接口,它底层调用asm 动态生成一个代理类去覆盖父类中非 final 的方法,然后实现 MethodInterceptor 接口的 intercept 方法,这样以后直接调用重写的方法,比 JDK 要快。但是加载 cglib 消耗时间比直接 JDK 反射时间长,开发的过程中,如果是反复动态生成新的代理类推荐用 JDK 自身的反射,反之用 cglib。

猜你喜欢

转载自zuimeitulip.iteye.com/blog/2048347
今日推荐