Gsonツール基本API

3901 ワード

1.json文字列で初期化対象:Gson.fromJson(jsonString  string,Class type )
class Util_JsonToObject{
public static  T jsonToObject(String jsonstring, Class type){ //              ;
     Gson son = new Gson();
    T t= son.fromJson(jsonstring,type );
    return t;
}
}
アプリケーション1:
String jsonString = "{'name':'samuel.cai','age':23,'grade':{'course':'English','score':100,'level':'A'}}";
                Student student = new JsonStudent();
student  = Util_JsonToObject.jsonToObject(jsonString, JsonStudent.class);

2.インスタンスオブジェクト生成json文字列:Gson.toJson(Object obj);
class Util_ObjectToJson{
	public static String ObjectToJson(Object obj){ 
		Gson json = new Gson();
		return json.toJson(obj);		
	}
}

適用2:
public class ObjectToJson {
     public static void main(String[] args) {
    	 FatherJson.Kids kids = new FatherJson().new Kids("samuel","male",35);	
    	 FatherJson father = new FatherJson(" xx",69,kids);
         String jsonString = Util_ObjectToJson.ObjectToJson(father);     
         System.out.println(jsonString); //{"name":" xx","age":69,"kids":{"kids_name":"samuel","kids_sex":"male","kids_age":35}}
     }
}

3.Jsonオブジェクト:作成されたフォームに関係なく、最小パーティクルはKey-value形式です.hashmap構造と似ています.
//Jasonオブジェクトの作成形式:1 key-value;2 array;//1.1 jasonオブジェクトを作成する.属性の追加:Keyの内容がvalueを繰り返すと上書きされます//1.2 keyは繰り返してはいけない.valueは繰り返すことができます//1.3 keyはstring、value 5のタイプ:boolean、数値タイプでなければなりません.文字列;文字型、jasonElementタイプ;
3.1 JsonObectを適用して作成:
JsonObject.addProperty(key,value)
public class GjsonCreate1 {
	public static void main(String[] args) { 		
		JsonObject jobject = new JsonObject();		
		jobject.addProperty("name1", "   ");
		jobject.addProperty("name2", "   ");
		jobject.addProperty("name3", "  ");
		jobject.addProperty("name4", "   "); 
		jobject.addProperty("name5", true);
		jobject.addProperty("name6", 7);
		jobject.addProperty("name7", 'A');
		jobject.addProperty("name1", "   ~");
		System.out.println(jobject.toString());
		//{"name1":"   ~","name2":"   ","name3":"  ","name4":"   ","name5":true,"name6":7,"name7":"A"}
}

適用3.2 JsonArray作成:
JsonArray.add(JsonObject)
public class GjsonCreate2 {
	public static void main(String[] args) { 	
		//JsonArray:JSONArray,      JSONObject     ,   [ { } , { } , ......  , { } ]     
		JsonArray array = new JsonArray();
		JsonObject sh = new JsonObject();
		JsonObject hlm = new JsonObject();
		JsonObject sg = new JsonObject();
		JsonObject xyj = new JsonObject();

		sh.addProperty("  ", "  ");
		hlm.addProperty("   ","   ");
		sg.addProperty("  ", "  ");
		xyj.addProperty("  ", "   ");
		array.add(sh);
		array.add(hlm);
		array.add(sg);
		array.add(xyj);		
		System.out.println(array.toString());
//[{"  ":"  "},{"   ":"   "},{"  ":"  "},{"  ":"   "}]		 
		jobject.add("       ", array);// jobject    3.1     
		System.out.println(jobject.toString());		
//{"name1":"   ~","name2":"   ","name3":"  ","name4":"   ","name5":true,"name6":7,"name7":"A","       ":[{"  ":"  "},{"   ":"   "},{"  ":"  "},{"  ":"   "}]}		 
	}