以上远程调用部分可以包装成方法吗
时间: 2023-08-05 08:02:00 浏览: 39
当然可以。你可以将远程调用的代码封装在一个方法中,使其更易于调用和重用。下面是一个简单的Java代码示例,它封装了上面提到的远程调用逻辑:
```java
public static String remoteMethodCall(String methodName, Object[] params) {
String result = null;
try {
Socket socket = new Socket("remote.server.com", 8080);
OutputStream out = socket.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(out);
oos.writeObject(methodName);
oos.writeObject(params);
InputStream in = socket.getInputStream();
ObjectInputStream ois = new ObjectInputStream(in);
result = ois.readObject().toString();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
```
这个方法接受两个参数:方法名和参数列表。它将这些参数序列化并通过Socket发送到远程服务器。然后等待服务器返回结果,并将结果反序列化为字符串并返回给调用方。你可以将此方法放在一个工具类中,以便在需要时轻松调用。