JSON工具:gson (google) 、json-lib、fastJson (alibaba)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiao__jia__jia/article/details/85766257

          JSON工具:gson   (google) 、json-lib、fastJson (alibaba)

1. 准备工作:
            pom依赖
            javabean
            单元测试类        

        pom依赖 :        

  <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.2.4</version>
        </dependency>
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <version>2.4</version>
            <classifier>jdk15</classifier>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.44</version>
        </dependency>


Student.java

class Student {
	
	private int id;
	private String name;
	public Student(int id,String name ){
		this.id = id;
		this.name = name;
	}
}


    2、Gson

       toJson(Object)
       fromJson(String, Class)
       TypeToken<T>
        
demo:

public void testgsonobj() {
		 Student aStudent = new Student(1, "小白");
		
		 //创建gson对象
		 Gson gson = new Gson();
		 String json = gson.toJson(aStudent);
		 System.out.println(json);
		
		 Student bStudent = gson.fromJson(json, Student.class);
		 System.out.println(bStudent);
	}
	
	public void testgsonlist(){
		ArrayList<Student> list = new ArrayList<Student>();
		list.add(new Student(1, "小红"));
		list.add(new Student(1, "小黑"));
		System.out.println(list);
		
		Gson gson = new Gson();
		String json = gson.toJson(list);
		System.out.println(json);
		
		ArrayList<Student> list2 = (ArrayList<Student>)gson.fromJson(json, (new TypeToken<List<Student>>(){}).getType());
		System.out.print(list2);
	}



    3、Json Lib
    
        JSONObject
        JSONArray
        
        fromObject(Object) //中间对旬 JSONObject
        toString() //实例方法,返回json字符串
        toBean (JSONObject,Class ) //返回对象
    
    
        fromObject(Object) //中间对旬 JSONObject
        toString() //实例方法,返回json字符串
        toCollection(JSONArray, Class) //返回集合
    
demo

 

public void testjsonlibobj() {
		 Student aStudent = new Student(1, "小白");
		
		 //创建gson对象
		 JSONObject jsonObject = JSONObject.fromObject(aStudent);
		 String str = jsonObject.toString();
		 System.out.println(str);
		 Student b = (Student) JSONObject.toBean(jsonObject, Student.class );
		 System.out.println(b);
		 
		 
		
	}
	
	public void testgsonlist(){
		ArrayList<Student> list = new ArrayList<Student>();
		list.add(new Student(1, "小红"));
		list.add(new Student(1, "小黑"));
		System.out.println(list);
		
		JSONObject jsonArray = JSONObject.fromObject(list);
		System.out.println(jsonArray.toString());
		ArrayList<Student> list2 = (ArrayList<Student>)JSONArray.toCollection(jsonArray, Student.class); 
		System.out.print(list2);
	}



    4. fastJson     

        JSON  
        toJSONString(Object)
        parseObject(String, Class<T>)
        parseArray(String, Class<T>)

demo

public void testfastjsonobj() {
		 Student aStudent = new Student(1, "小白");
		
		 String str =  JSON.toJSONString(aStudent);
		 System.out.println(str);
		 
		 Student bStudent  = JSON.parseObject(str, Student.class);
		 System.out.println(bStudent);
		 
	}
	
	public void testfastjonlist(){
		ArrayList<Student> list = new ArrayList<Student>();
		list.add(new Student(1, "小红"));
		list.add(new Student(1, "小黑"));
		System.out.println(list);
		
		String str = JSON.toJSONString(list);
		System.out.println(str);
		
		ArrayList<Student> list2 = (ArrayList<Student>)JSON.parseArray(str, Student.class);
		System.out.print(list2);
	}

猜你喜欢

转载自blog.csdn.net/xiao__jia__jia/article/details/85766257