Gson 학습
package com.bh.test;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
/**Gson test * @author cyq * */
public class Test {
public Test() {
method0();
}
/** */
public void method0(){
Gson gson = new Gson();
String json = gson.toJson(123);
System.out.println(json);
int target2 = gson.fromJson(json, int.class);
System.out.println(target2);
}
/** */
public void method1(){
Type listType = new TypeToken<List<String>>() {}.getType();
List<String> target = new LinkedList<String>();
target.add("zs");
Gson gson = new Gson();
String json = gson.toJson(target, listType);
System.out.println(json);
List<String> target2 = gson.fromJson(json, listType);
System.out.println(target2);
}
/** * , , , null , json , gson 。 * gson , null json 。 */
public void method2(){
Gson gson = new GsonBuilder().setVersion(1.1).serializeNulls().setPrettyPrinting().create();// serializeNulls , gson
Gson gson1 = new Gson();
Person person=new Person();
person.setAge(10);
person.setName("zs");
String gsonStr=gson.toJson(person);
System.out.println(gsonStr);
System.out.println(gson.fromJson(gsonStr, Person.class));
String gsonStr1=gson1.toJson(person);
System.out.println(gsonStr1);
System.out.println(gson1.fromJson(gsonStr1, Person.class));
}
/** * , */
public void method3(){
Gson gson = new Gson();
String str= "{\"name\":\"value1\",\"age\":\"11\"}";
String str2= "{\"id\":\"11\",\"name\":\"value2\"}";
List<String>list=new ArrayList<>();
list.add(str);
list.add(str2);
String jsonStr=gson.toJson(list);
System.out.println(jsonStr);
List<String> obj = gson.fromJson(jsonStr, new TypeToken<List<String>>() {}.getType());
System.out.println(gson.fromJson(obj.get(0), Person.class));
System.out.println(gson.fromJson(obj.get(1), User.class));
}
/** */
public void method4(){
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
User user=new User();
user.setName("lmw");
user.setBirthDay(new Date());
String jsonStr=gson.toJson(user);
System.out.println(jsonStr);
User uu=gson.fromJson(jsonStr, User.class);
System.out.println(uu);
}
/** */
public void method5(){
Gson gson = new GsonBuilder().registerTypeAdapter(Hobby.class,new EnumSerializer()).create();
User user = new User();
user.setName("item_name");
user.setHobby(Hobby.BASKETBALL);// state
String s = gson.toJson(user);
System.out.println(s);
User retItem = gson.fromJson(s, User.class);
System.out.println(retItem);
}
public static void main(String[] args) {
new Test();
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Rails5에서 enum을 사용할 때는 _prefix (접두사) _suffix (접미사)를 사용합시다.Rails5에서 ActiveRecord::Enum를 정의 할 때 _prefix, _suffix라는 무기가 있다는 것을 알고 싶습니다. You can use the :_prefix or :_suffix options ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.