gson 사용 방법
Person
public class Person {
private String name;
private int age;
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* @return the age
*/
public int getAge() {
return age;
}
/**
* @param age the age to set
*/
public void setAge(int age) {
this.age = age;
}
@Override
public String toString()
{
return name + ":" +age;
}
}
2, json 문자열로 전환
Gson gson = new Gson();
List<Person> persons = new ArrayList<Person>();
for (int i = 0; i < 10; i++) {
Person p = new Person();
p.setName("name" + i);
p.setAge(i * 5);
persons.add(p);
}
String str = gson.toJson(persons);
위의 코드는 Gson 객체에 중점을 두고 있으며 ToJason() 방법을 사용하여 객체를 Json 문자열로 변환할 수 있습니다. 위 코드의str 객체 값은 다음과 같습니다.
[{"name":"name0","age":0},{"name":"name1","age":5},{"name":"name2","age":10},{"name":"name3","age":15},
{"name":"name4","age":20},{"name":"name5","age":25},{"name":"name6","age":30},{"name":"name7","age":35},
{"name":"name8","age":40},{"name":"name9","age":45}]
3. 역서열화
다음은 gson의 반서열화를 살펴보자. Gson은 Json 관련 대상에서 자바 실체까지 실현하는 방법을 제공했다.
일상적인 응용에서 우리는 일반적으로 두 가지 상황에 부딪혀 단일 실체 대상으로 전환하고 대상 목록이나 다른 구조로 전환한다.
첫 번째:
예를 들어 json 문자열은: [{"name":"name0", "age":0}]
Person person = gson.fromJson(str, Person.class);
json 문자열과 변환할 대상의 종류 두 개의 인자를 제공합니다.
두 번째는 목록 유형으로 변환하는 것입니다.
List<Person> ps = gson.fromJson(str, new TypeToken<List<Person>>(){}.getType());
for(int i = 0; i < ps.size() ; i++)
{
Person p = ps.get(i);
System.out.println(p.toString());
}
위의 코드가 TypeToken을 사용한 것을 볼 수 있다. 이것은 gson이 제공하는 데이터 유형 변환기로 각종 데이터 집합 유형 전환을 지원할 수 있다.
전재 주소:http://www.cnblogs.com/chenlhuaf/archive/2011/05/01/gson_test.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
gson이 Integer를 기본적으로 Double로 변환하는 문제를 완벽하게 해결우선 javascript는 다음과 같은 유형만 있습니다. 1. JavaScript의 Number 이중 정밀도 부동 소수점 형식 2. String 큰따옴표의 백슬래시 의미의 유니코드 3. Boolean true 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.