2
什麼是CGLIB以及它如何與Spring相關?在使用Spring Framework時,我們是否必須明確地定義CGLIB的用法?什麼是Spring框架中的CGLIB?
什麼是CGLIB以及它如何與Spring相關?在使用Spring Framework時,我們是否必須明確地定義CGLIB的用法?什麼是Spring框架中的CGLIB?
Ref Spring docs。 什麼是CGLIB &它與Spring有什麼關係?
CGLIB是一個代碼生成庫。 Spring使用CGLIB來生成代理。
Spring AOP默認使用AOP代理的標準JDK動態代理。這使得任何接口(或一組接口)都可以被代理。
是的,你必須告訴spring明確使用基於CGLIB的代理。
通過xml:
<aop:aspectj-autoproxy proxy-target-class="true"/>
代理目標類屬性設置爲true,將會導致基於CGLIB的代理生效。
通過譯註:
@Configuration
@EnableAspectJAutoProxy(proxyTargetClass=true)
public class AppConfig {
// ...
}
沒有必要CGLIB添加到類路徑。從Spring 3.2開始,CGLIB被重新包裝幷包含在Spring-JAR中。
你也可以看看this。