protobuf와 json을 서로 바꾸는 방법

2726 단어
protobuf 대상이 json으로 전환되고FastJson 같은 도구를 사용하여 직접 전환할 수 없습니다. 왜냐하면 protobuf 생성 대상의 get 방법인데 되돌아오는 유형은byte[]이고 String 형식만 json의 키로 사용할 수 있습니다.구글은 프로토버프와 json 사이의 상호 전환을 위한 전문적인 패키지를 제공합니다.방법은 다음과 같습니다.
 
1. 변환용 마벤트 의존 추가:
1     <dependency>
2         <groupId>com.googlecode.protobuf-java-formatgroupId>
3         <artifactId>protobuf-java-formatartifactId>
4         <version>1.2version>
5     dependency>    

 
2,protobuf에서 json으로 전환하는 방법
1     // protobuf   json
2     Message.Builder message = Message.newBuilder();
3     String json = JsonFormat.printToString(message.build());

 
3. json에서protobuf로 전환하는 방법
1     //json   protobuf
2     try {
3         JsonFormat.merge(json, message);
4     } catch (ParseException e) {
5         e.printStackTrace();
6     }

 
전재 대상:https://www.cnblogs.com/pcheng/p/9586039.html

좋은 웹페이지 즐겨찾기