protobuf 对象转 json string
所属分类 protobuf
浏览量 832
protobuf 对象 与 json string 互相转换
不能直接使用 Jackson 等 进行序列化与反序列化
谷歌提供了专门的jar 包
com.googlecode.protobuf-java-format:protobuf-java-format:1.2
import com.googlecode.protobuf.format.JsonFormat;
import dyyx.PersonProto.Person.Builder;
public class JsonTest {
public static void main(String[] args) throws Exception {
System.out.println("JsonTest");
PersonProto.Person person = PersonProto.Person.newBuilder().setName("cat").setAge(3).build();
System.out.println(person);
String jsonstr = JsonFormat.printToString(person);
System.out.println(jsonstr);
Builder personBuilder = PersonProto.Person.newBuilder();
JsonFormat.merge(jsonstr, personBuilder);
PersonProto.Person person2 = personBuilder.build();
System.out.println("person2=\n" + person2);
// 这里会报错
// jsonstr = JacksonUtil.toString(person, true);
// System.out.println(jsonstr);
}
}
完整代码
https://gitee.com/dyyx/hellocode/blob/master/demo/protobufdemo/src/main/java/dyyx/JsonTest.java
protobuf 简介 及 java实例
上一篇
下一篇
JavaScript 模板引擎
graalvm hello 实例
jar 命令使用
jackson 直接把protobuf 数据对象 序列化成 json string
quarkus Jackson 配置
quarkus 配置读取