動態代理的兩種方式以及區別

JDK動態代理:利用反射機制生成一個實現代理接口的匿名類,在調用具體方法前調用InvokeHandler來處理。 CGlib動態代理:利用ASM(開源的Java字節碼編輯庫,操做字節碼)開源包,將代理對象類的class文件加載進來,經過修改其字節碼生成子類來處理。java 區別:JDK代理只能對實現接口的類生成代理;CGlib是針對類實現代理,對指定的類生成一個子類,並覆蓋其中的方法,這種經過繼承
相關文章
相關標籤/搜索