spring_使用CGlib 創建代理

public class CGlibProxyFactory implements MethodInterceptor {private Object targetObject;public Object getProxyInstance(Object targetObject){this.targetObject = targetObject;Enhancer enhancer = new Enhancer();enhancer.setSuperclass(targetObject.getClass());//非finalenhancer.setCallback(this);return enhancer.create();}@Overridepublic Object intercept(Object proxy, Method method, Object[] args, MethodProxy methodProxy) throws Throwable {PersonServiceBean bean = (PersonServiceBean) targetObject;Object returnValue = null;if(bean.getUser() != null){returnValue = methodProxy.invoke(this.targetObject, args);}return returnValue;}}
發佈了25 篇原創文章 · 獲贊 6 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章