先看代码
服务接口
public interface SayHelloService {
String sayHello(String hello);
}
作为服务提供方,要对服务接口给出实现
public class SayHelloServiceImpl implements SayHelloService {
@Override
public String sayHello(String hello) {
if ("hello".equals(hello)) {
return "hello";
} else {
return "bye bye";
}
}
}
消费者代码,很简单,先与本地的8888端口建立一个TCP连接,然后获取输出流,向另一端发送一些数据,这里的另一端就是我们的提供方了。
public class Consumer {
public static void main(String[] args) throws Exception {
String interfaceName = SayHelloService.class.getName();
Method method = SayHelloService.class.getMethod("sayHello", String.class);
Object[] arguments = {"hello"};
// 将调用接口名、方法名、方法形参、方法实参传到另一端
Socket socket = new Socket("localhost", 8888);
ObjectOutputStream outputStream = new ObjectOutputStream(soc