> Java > java지도 시간 > 본문

JAVA의 json을 구문 분석하는 방법

anonymity
풀어 주다: 2019-05-29 09:19:46
원래의
4078명이 탐색했습니다.

1. JSON이란

JSON은 프로그래밍 언어와 완전히 독립적인 텍스트 형식을 사용하여 데이터를 저장하고 표현하는 경량 데이터 교환 형식입니다. 단순성과 명확한 계층 구조 덕분에 JSON은 이상적인 데이터 교환 언어입니다. 읽기 및 쓰기가 쉬울 뿐만 아니라 구문 분석 및 생성도 쉬우며 네트워크 전송 효율성을 효과적으로 향상시킵니다.

JAVA의 json을 구문 분석하는 방법

2. JSON 구문

(1) 데이터가 이름/값 쌍으로 되어 있음

(2) 데이터가 쉼표로 구분됨

(3) 중괄호로 개체 저장

(4) 대괄호로 배열 저장

3. Java에서 JSON을 생성하고 구문 분석하는 네 가지 방법(간단한 데모):

엔티티 클래스: JSON 데이터를

public class Person {
    private String name;
    private String sex;
    private int age;
    public Person(String name, String sex, int age) {
        this.name = name;
        this.sex = sex;
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public String getSex() {
        return sex;
    }
    public int getAge() {
        return age;
    }
    @Override
    public String toString() {
        return "Person{name='" + name + '\'' + ", sex='" + sex + '\'' + ", age=" + age + '}';
    }
}
로그인 후 복사

로 변환하는 데 사용됩니다. (1) 기존 방법 사용:

엔티티 클래스로 Json 생성 문자열:

public Person getPerson(){
    return new Person("张三", "男", 25);
}
@Test
public void EntityToJson(){
    JSONObject jsonObject = new JSONObject();
    jsonObject.put("name", getPerson().getName());
    jsonObject.put("sex", getPerson().getSex());
    jsonObject.put("age", getPerson().getAge());
    System.out.println(jsonObject.toString());
}
로그인 후 복사

Json 문자열에서 엔터티 클래스 생성:

@Test
public void JsonToEntity(){
    String jsonString = "{\"sex\":\"男\",\"name\":\"张三\",\"age\":25}";
    JSONObject jsonObject = new JSONObject(jsonString);
    Person person = new Person(jsonObject.get("name").toString(), jsonObject.get("sex").toString(), Integer.valueOf(jsonObject.get("age").toString()));
    System.out.println(person.toString());
}
로그인 후 복사

(2) Jackson 메서드 사용:

엔터티 클래스에서 Json 문자열 생성:

@Test
public void EntityToJson() throws IOException {
    Person person = new Person("张三", "男", 25);
    ObjectMapper objectMapper = new ObjectMapper();
    String jsonString = objectMapper.writeValueAsString(person);
    System.out.println(jsonString);
}
로그인 후 복사

Json 문자열에서 엔터티 클래스 생성:

@Test
public void JsonToEntity() throws IOException {
    ObjectMapper objectMapper = new ObjectMapper();
    String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}";
    Person person = objectMapper.readValue(jsonString, Person.class);
    System.out.println(person);
}
로그인 후 복사

(3) GSON 메서드 사용:

엔터티 클래스에서 Json 문자열 생성:

@Test
public void EntityToJson(){
    Person person = new Person("张三", "男", 25);
    Gson gson = new Gson();
    String jsonString = gson.toJson(person);
    System.out.println(jsonString);
}
로그인 후 복사

Json 문자열에서 엔터티 클래스 생성:

@Test
public void JsonToEntity(){
    String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}";
    Gson gson = new Gson();
    Person person = gson.fromJson(jsonString, Person.class);
    System.out.println(person.toString());
}
로그인 후 복사

(4) FastJSON 메서드

를 사용하여 엔터티 클래스 문자열에서 Json 생성:

@Test
public void EntityToJson(){
    Person person = new Person("张三", "男", 25);
    Object jsonString = JSON.toJSON(person);
    System.out.println(jsonString.toString());
}
로그인 후 복사

엔터티 생성 Json 문자열의 클래스:

@Test
public void JsonToEntity(){
    String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}";
    Person person = JSON.parseObject(jsonString, Person.class);
    System.out.println(person.toString());
}
로그인 후 복사

위 내용은 JAVA의 json을 구문 분석하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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