常用JSON与Object对象互相转换工具

实体类: 

package test;

public class User {
	private String name;
	private Integer age;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	@Override
	public String toString() {
		return "User [name=" + name + ", age=" + age + "]";
	}
	
}

转还:

package test;

import java.io.IOException;

import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;

import net.sf.json.JSONObject;


public class JSON与Object对象互相转换 {
	public static void main(String[] args) {
		/**
		 * 使用gson要引入的jar
		 * gson-2.2.4.jar
		 * 
		 * gson的使用,对象转json
		 */
		User user=new User();
		user.setName("zs");
		user.setAge(20);
		Gson gson=new Gson();
		String str=gson.toJson(user);
		System.out.println("gson-->"+str);
		/**
		 * gson的使用,json转对象
		 */
		Gson gson1=new Gson();
		User user1=gson.fromJson("{\"name\":\"zs1\",\"age\":21}", User.class);
		System.out.println(user1);
		/**
		 * 使用fastjson要引入的jar
		 * fastjson-1.2.36.jar
		 * 
		 * fastJson的使用,对象转json
		 */
		User user2=new User();
		user2.setName("zs2");
		user2.setAge(22);
		String str1 = JSON.toJSONString(user2);
		System.out.println("fastJson-->"+str1);
		/**
		 * fastJson的使用,json转对象
		 */
		User user3 = JSON.parseObject("{\"age\":22,\"name\":\"zs3\"}", User.class);
		System.out.println(user3);
		/**
		 * 使用Jackson必须要引入的jar,
		 * jackson-annotations-2.0.0.jar,
		 * jackson-core-2.0.0.jar,
		 * jackson-databind-2.0.0.jar
		 * 
		 * jackson的使用,对象转json
		 */
		User user4=new User();
		user4.setName("zs4");
		user4.setAge(24);
		ObjectMapper mapper = new ObjectMapper(); 
		try {
			String str2=mapper.writeValueAsString(user4);
			System.out.println("jackson-->"+str2);
		} catch (JsonGenerationException e) {
			e.printStackTrace();
		} catch (JsonMappingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		/**
		 * jackson的使用,json转对象
		 */
		try {
			User user5=mapper.readValue("{\"name\":\"zs4\",\"age\":24}",User.class);
			System.out.println(user5);
		} catch (IOException e) {
			e.printStackTrace();
		}
		/**
		 * 使用jsonlib要引入的jar
		 * json-lib-2.4-jdk15.jar
		 * commons-beanutils-1.8.0.jar
		 * commons-collections-3.2.1.jar
		 * commons-lang-2.5.jar
		 * commons-logging-1.1.1.jar
		 * ezmorph-1.0.6.jar
		 * 
		 * jsonlib的使用,对象转json
		 */
		User user5=new User();
		user5.setName("zs5");
		user5.setAge(25);
		JSONObject js=JSONObject.fromObject(user5);
		String str3=js.toString();
		System.out.println("json-lib-->"+str3);
		/**
		 * json-lib的使用,json转对象
		 */
		JSONObject js1=JSONObject.fromObject("{\"age\":26,\"name\":\"zs6\"}");
		User user6 = (User) JSONObject.toBean(js1, User.class);
		System.out.println(user6);
		
		
		
		
		
		
	}
}

猜你喜欢

转载自blog.csdn.net/qq_39669058/article/details/89313920