thrift namespace java com.example.thrift service CalculatorService { i32 add(1: i32 a, 2: i32 b), i32 subtract(1: i32 a, 2: i32 b) } package com.example.service; public class CalculatorServiceImpl implements CalculatorService { @Override public int add(int a, int b) { return a + b; } @Override public int subtract(int a, int b) { return a - b; } } package com.example.server; import com.example.thrift.CalculatorService; import com.example.service.CalculatorServiceImpl; import com.twitter.finagle.Thrift; import com.twitter.finagle.builder.ServerBuilder; public class ThriftServer { public static void main(String[] args) { CalculatorService.Processor<CalculatorServiceImpl> processor = new CalculatorService.Processor<>(new CalculatorServiceImpl()); ServerBuilder.safeBuild( Thrift.server().serveIface("localhost:9090", processor) ); } } package com.example.client; import com.example.thrift.CalculatorService; import com.twitter.finagle.Thrift; import com.twitter.util.Future; public class ThriftClient { public static void main(String[] args) { CalculatorService.ServiceIface client = Thrift.client().newIface("localhost:9090", CalculatorService.ServiceIface.class); Future<Integer> addResult = client.add(10, 5); addResult.onSuccess(result -> { System.out.println("Add Result: " + result); }); Future<Integer> subtractResult = client.subtract(10, 5); subtractResult.onSuccess(result -> { System.out.println("Subtract Result: " + result); }); } }


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