> Java > java지도 시간 > 본문

Java에서 JsonParserSequence를 사용하여 두 개의 JSON 문자열을 순차적으로 병합하는 방법은 무엇입니까?

王林
풀어 주다: 2023-09-16 15:49:02
앞으로
547명이 탐색했습니다.

Java에서 JsonParserSequence를 사용하여 두 개의 JSON 문자열을 순차적으로 병합하는 방법은 무엇입니까?

JsonParserSequence는 특정 순서로 정렬된 두 개의 하위 파서를 포함하는 파서를 만드는 데 사용할 수 있는 도우미 클래스입니다. JsonParserSequence 클래스의 정적 메서드 createFlattened()를 사용하여 시퀀스를 만들 수 있습니다.

구문

public static JsonParserSequence createFlattened(JsonParser first, JsonParser second)
로그인 후 복사

import java.io.*;
import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.core.util.*;
public class JsonParserSequenceTest {
   public static void main(String[] args) throws JsonParseException, IOException {
      String jsonString1 = "{\"id\":\"101\", \"name\":\"Ravi Chandra\", \"address\":\"Pune\"}";
      String jsonString2 = "{\"id\":\"102\", \"name\":\"Raja Ramesh\", \"address\":\"Hyderabad\", \"contacts\":[{\"mobile\":\"9959984805\", \"home\":\"7702144400\"}]}";
      JsonFactory jsonFactory = new JsonFactory();
      JsonParser jsonParser1 = jsonFactory.createParser(jsonString1);
      JsonParser jsonParser2 = jsonFactory.createParser(jsonString2);
      JsonParserSequence jsonParserSequence = JsonParserSequence.createFlattened(jsonParser1, jsonParser2);
      JsonToken jsonToken = jsonParserSequence.nextToken();
         while(jsonToken != null) {
            switch(jsonToken) {
               case FIELD_NAME: System.out.println("Key field: " + jsonParserSequence.getText());
               break;
               case VALUE_FALSE:
               case VALUE_NULL:
               case VALUE_NUMBER_FLOAT:
               case VALUE_NUMBER_INT:
               case VALUE_STRING:
               case VALUE_TRUE: System.out.println("Key value: " + jsonParserSequence.getText());
               break;
            }
            jsonToken = jsonParserSequence.nextToken();
         }
      jsonParserSequence.close();
   }
}
로그인 후 복사

출력

Key field: id
Key value: 101
Key field: name
Key value: Ravi Chandra
Key field: address
Key value: Pune
Key field: id
Key value: 102
Key field: name
Key value: Raja Ramesh
Key field: address
Key value: Hyderabad
Key field: contacts
Key field: mobile
Key value: 9959984805
Key field: home
Key value: 7702144400
로그인 후 복사

위 내용은 Java에서 JsonParserSequence를 사용하여 두 개의 JSON 문자열을 순차적으로 병합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿