<dependency> <groupId>io.activej</groupId> <artifactId>activej-rpc</artifactId> <version>3.0.0</version> </dependency> RpcServer server = RpcServer.create() .withProtocol(protocol) .withSerializer(serializer) .withMessageTypes(Request.class, Response.class) .withHandler(CalculatorService.class, CalculatorServiceImpl.class) .withListenAddress(ServerConfig.DEFAULT_SERVER_ADDRESS) .withListenPort(ServerConfig.DEFAULT_SERVER_PORT); RpcClient client = RpcClient.create() .withProtocol(protocol) .withSerializer(serializer) .withMessageTypes(Request.class, Response.class) .withAddress(ServerConfig.DEFAULT_SERVER_ADDRESS) .withPort(ServerConfig.DEFAULT_SERVER_PORT); public interface CalculatorService { int calculateSum(int a, int b); } public class CalculatorServiceImpl implements CalculatorService { @Override public int calculateSum(int a, int b) { return a + b; } } server.withHandler(CalculatorService.class, CalculatorServiceImpl.class); public class CalculateSumRequest extends Message { public int a; public int b; public CalculateSumRequest() { } public CalculateSumRequest(int a, int b) { this.a = a; this.b = b; } } public class CalculateSumResponse extends Message { public int result; public CalculateSumResponse() { } public CalculateSumResponse(int result) { this.result = result; } } Promise<CalculateSumResponse> resultPromise = client.sendRequest(new CalculateSumRequest(2, 3)); resultPromise.whenComplete((result, e) -> { if (e != null) { } else { System.out.println(result.result); } });


上一篇:
下一篇:
切换中文