>Java >java지도 시간 >Jackson을 사용하여 JSON 문자열을 Java 객체로 변환하는 방법은 무엇입니까?

Jackson을 사용하여 JSON 문자열을 Java 객체로 변환하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-05 19:40:02869검색

How to Convert JSON Strings to Java Objects Using Jackson?

Jackson을 사용하여 JSON 문자열을 Java 객체로 변환

소개

이 가이드에서는 인기 있는 Jackson을 활용하여 JSON 문자열을 Java 객체로 변환하는 문제를 다룹니다. 도서관. 목록 및 키-값 쌍을 포함한 JSON 데이터 구조를 매핑하기 위해 Jackson을 사용하는 방법을 살펴보겠습니다.

Jackson을 사용하여 JSON 문자열 구문 분석

JSON 문자열을 Java 개체로 구문 분석하려면, Jackson의 ObjectMapper를 사용할 수 있습니다.

<code class="java">ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = mapper.readValue(jsonString, Map.class);</code>

이 접근 방식은 JSON 문자열을 키가 문자열이고 값이 객체인 일반 Map으로 변환합니다.

JSON 데이터를 보다 편리하게 처리하려면 Jackson의 JsonNode를 사용할 수 있습니다.

<code class="java">JsonNode rootNode = mapper.readTree(jsonString);</code>

JsonNode는 JSON 데이터의 계층적 표현을 제공합니다.

사용자 정의 Java 클래스

일반 맵을 사용하는 대신 사용자 정의를 정의할 수 있습니다. JSON 데이터의 구조를 미러링하는 Java 클래스:

<code class="java">public class Library {
  @JsonProperty("libraryname")
  public String name;

  @JsonProperty("mymusic")
  public List<Song> songs;
}

public class Song {
  @JsonProperty("Artist Name") public String artistName;
  @JsonProperty("Song Name") public String songName;
}

Library lib = mapper.readValue(jsonString, Library.class);</code>

이 접근 방식을 사용하면 JSON 데이터 내의 특정 필드에 직접 액세스할 수 있습니다.

데이터 액세스

JSON 문자열을 Java 객체로 구문 분석하면 다음과 같이 데이터에 액세스할 수 있습니다.

  • 일반 지도 접근 방식의 경우:

    • map.get("libraryname ")는 "libraryname" 키의 값을 검색합니다.
    • map.get("mymusic")은 각 노래를 나타내는 개체 목록을 검색합니다.
  • 사용자 정의 Java 클래스 접근 방식의 경우:

    • lib.name은 라이브러리 이름을 검색합니다.
    • lib.songs는 Song 개체 목록을 검색합니다.
    • lib.songs. get(0).artistName은 첫 번째 노래의 아티스트 이름을 검색합니다.

위 내용은 Jackson을 사용하여 JSON 문자열을 Java 객체로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.