- public static Object getProxy(final Object target,final Advice myAdvice){
- Object proxy=Proxy.newProxyInstance(
- target.getClass().getClassLoader(),
- target.getClass().getInterfaces(),
- new InvocationHandler() {
- @Override
- public Object invoke(Object proxy, Method method, Object[] args)
- throws Throwable {
- myAdvice.beginMethod();
- Object retVal=method.invoke(target, args);
- myAdvice.endMethod();
- return retVal;
- }
- });
- return proxy;
- }
复制代码 上面是一个获得代理的函数,里面有个内部类叫做InvocationHandler
需要复写他的invoke()方法,注意到他需要传递一个Object proxy
可是这个Object proxy谁给的呢,他有没有用到这个参数啊
|