genericinvocationhandler.java

来自「easyweb的使用」· Java 代码 · 共 54 行

JAVA
54
字号
package com.easyjf.aop;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
 * 测试
 * @author stef_wu
 *
 */
public class GenericInvocationHandler implements InvocationHandler {

	private Object target = null;

	private Object realtarget = null;

	IMethodInterceptor methodInterceptor = null;

	public void setTarget(Object target_) {
		this.target = target_;
	}

	public void setRealTarget(Object realtarget_) {
		this.realtarget = realtarget_;
	}

	public void setMethodInterceptor(IMethodInterceptor methodInterceptor_) {
		this.methodInterceptor = methodInterceptor_;
	}

	public Object invoke(Object proxy, Method method, Object[] args)
			throws Throwable {
		// TODO Auto-generated method stub
		try {
			Object interceptBeforeReturnObject = null;
			if (methodInterceptor != null) {
				interceptBeforeReturnObject = methodInterceptor
						.interceptBefore(proxy, method, args, realtarget);
			}
			Object retObject = method.invoke(target, args);
			if (methodInterceptor != null) {
				methodInterceptor.interceptAfter(proxy, method, args,
						realtarget, retObject, interceptBeforeReturnObject);
			}
			return retObject;
		} catch (InvocationTargetException e) {
			throw e.getTargetException();
		} catch (Exception e) {
			throw e;
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?