加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

实体类和JSON对象之间相互转化

发布时间:2020-12-15 03:14:17 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 在需要用到JSON对象封装数据的时候,往往会写很多代码,也有很多复制粘贴,为了用POJO的思想我们可以装JSON转化为实体对象进行操作 package myUtil;im

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

在需要用到JSON对象封装数据的时候,往往会写很多代码,也有很多复制粘贴,为了用POJO的思想我们可以装JSON转化为实体对象进行操作
package myUtil;

import java.io.IOException;

import myProject.Student;
import myProject.StudentList;

import org.codehaus.jackson.map.ObjectMapper;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/**
 * 实体类和JSON对象之间相互转化(依赖包jackson-all-1.7.6.jar、jsoup-1.5.2.jar)
 * @author wck
 *
 */
public class JSONUtil {
	/**
	 * 将json转化为实体POJO
	 * @param jsonStr
	 * @param obj
	 * @return
	 */
	public static<T> Object JSONToObj(String jsonStr,Class<T> obj) {
		T t = null;
		try {
			ObjectMapper objectMapper = new ObjectMapper();
		    t = objectMapper.readValue(jsonStr,obj);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return t;
	}
	
	/**
	 * 将实体POJO转化为JSON
	 * @param obj
	 * @return
	 * @throws JSONException
	 * @throws IOException
	 */
	public static<T> JSONObject objectToJson(T obj) throws JSONException,IOException {
        ObjectMapper mapper = new ObjectMapper();  
        // Convert object to JSON string  
        String jsonStr = "";
        try {
			 jsonStr =  mapper.writeValueAsString(obj);
		} catch (IOException e) {
			throw e;
		}
		return new JSONObject(jsonStr);
	}
	
	
	public static void main(String[] args) throws JSONException,IOException {
		JSONObject obj = null;
		obj = new JSONObject();
		obj.put("name","213");
		obj.put("age",27);
		JSONArray array = new JSONArray();
		array.put(obj);
		obj = new JSONObject();
		obj.put("name","214");
		obj.put("age",28);
		array.put(obj);
		Student stu = (Student) JSONToObj(obj.toString(),Student.class);
		JSONObject objList = new JSONObject();
		objList.put("student",array);
		System.out.println("objList:"+objList);
		StudentList stuList = (StudentList) JSONToObj(objList.toString(),StudentList.class);
		System.out.println("student:"+stu);
		System.out.println("stuList:"+stuList);
		System.out.println("#####################################");
		JSONObject getObj = objectToJson(stu);
		System.out.println(getObj);
	}
}
package myProject;

public class Student {
	 private String name;
	    private int age;
	    //private StudentClass studentClass;
	    public String getName() {
	        return name;
	    }
	    public void setName(String name) {
	        this.name = name;
	    }
	    public int getAge() {
	        return age;
	    }
	    public void setAge(int age) {
	        this.age = age;
	    }
		@Override
		public String toString() {
			return "Student [name=" + name + ",age=" + age + "]";
		}
}
package myProject;

import java.util.List;

public class StudentList {
	 List<Student> student;
	    public List<Student> getStudent() {
	        return student;
	    }
	 
	    public void setStudent(List<Student> student) {
	        this.student = student;
	    }

		@Override
		public String toString() {
			return "StudentList [student=" + student + "]";
		}   
}

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读