json是许多场景下的常用格式,grpc中提供了util工具可以将grpc格式的实例和string类型的json进行互转。
grpc转json
@Test
public void printer() throws InvalidProtocolBufferException {
//grpc实例
ProtoObj.Person person = ProtoObj.Person.newBuilder().setMyName("World").build();
System.out.println( JsonFormat.printer().print(person));
}
json转grpc
@Test
public void parse() throws InvalidProtocolBufferException {
//创建builder
ProtoObj.Person.Builder builder=ProtoObj.Person.newBuilder();
//使用parser进行merge,这里是merge只是覆盖重复的字段
JsonFormat.parser().merge("{myName:'aaa'}",builder);
System.out.println(builder.build().getMyName());
}