RemoteInvocationHandler.java 862 B

12345678910111213141516171819202122
  1. package cn.hhj.proxy.remote;
  2. import cn.hhj.request.RpcRequest;
  3. import cn.hhj.rpcsend.RpcNetTransport;
  4. import java.lang.reflect.InvocationHandler;
  5. import java.lang.reflect.Method;
  6. public class RemoteInvocationHandler implements InvocationHandler {
  7. @Override
  8. public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
  9. // 进行请求数据的包装
  10. RpcRequest request=new RpcRequest();
  11. request.setClassName(method.getDeclaringClass().getName());
  12. request.setMethodName(method.getName());
  13. request.setParameters(args);
  14. request.setVersion("V1.0");
  15. System.err.println("【client】:远程通信,需要调用的接口是:"+request.getClassName()+"."+request.getMethodName()+"()");
  16. RpcNetTransport rnt=new RpcNetTransport();
  17. return rnt.send(request);
  18. }
  19. }