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

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

发布时间:2020-12-14 17:45:24 所属栏目:Java 来源:网络整理
导读:在需要用到JSON对象封装数据的时候,往往会写很多代码,也有很多复制粘贴,为了用POJO的思想我们可以装JSON转化为实体对象进行操作 package myUtil; import java.io.IOException; import myProject.Student;import myProject.StudentList; import org.codeha

在需要用到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);
  }
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

(编辑:李大同)

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

    推荐文章
      热点阅读