读书人

动态署理工厂

发布时间: 2012-10-06 17:34:01 作者: rapoo

动态代理工厂

package com.xcl.common;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class DynamicProxyFactory implements InvocationHandler {private Object targetObj;public Object createProxyInstance(Object targetObj) {this.targetObj = targetObj;return Proxy.newProxyInstance(this.targetObj.getClass().getClassLoader(), this.targetObj.getClass().getInterfaces(),this);}@Overridepublic Object invoke(Object proxy, Method method, Object[] args)throws Throwable {UserServiceBean bean = (UserServiceBean) this.targetObj;Object result = null;if (bean.getUser() != null && !"".equals(bean.getUser())) {// 把方法的调用委派给目标对象result = method.invoke(this.targetObj, args);}return result;}}

读书人网 >软件架构设计

热点推荐