JSONObject常用转换

package com.neusoft.ehrss.base.si.person.appraisePlat.utils;

import com.alibaba.fastjson.JSONObject;

/**
 * @author
 * @date 2021/11/17 14:40
 */
public class JsonUtil {


    /**
     * 将JSONObject对象转成String字符串
     *
     * @param jsonObject
     * @return
     */
    public static String jsonObjectToString(JSONObject jsonObject) {
        return jsonObject.toJSONString();
    }

    /**
     * java对象转换为String类型的json字符串
     *
     * @param obj
     * @return
     */
    public static String objectToJson(Object obj) {
        return JSONObject.toJSONString(obj);
    }


    /**
     * json字符串转换为java对象
     *
     * @param jsonStr
     * @return
     */
    public static Object jsonToObject(String jsonStr) {
        return JSONObject.parseObject(jsonStr, Object.class);

    }

    /**
     * json字符串转换为JSONObject对象
     *
     * @param jsonObj
     * @return
     */
    public static JSONObject jsonToJSONObject(String jsonObj) {
        return JSONObject.parseObject(jsonObj);
    }


    /**
     * 将JSONObject对象转换为java对象
     * <p>
     * 为什么要将JSONObject对象转换为java对象?
     * java对象:代表一个业务模式,对象的属性类型都是有明确定义,转成对象后,就可以通过get/set方法操作,其他人
     * 使用的时候也能知道里面有什么。
     * JSONObject对象在java中相当于map,可以通过key取到值,只有在输入时才知道里面内容。
     * </p>
     *
     * @param jso
     * @return
     */
    public static Object jsonObjectToObject(JSONObject jso) {
        return JSONObject.toJavaObject(jso, Object.class);
    }


    /**
     * 将java对象转换为JSONObject对象
     *
     * @param obj
     * @return
     */
    public static JSONObject objectToJSONObject(Object obj) {
        return JSONObject.parseObject(JSONObject.toJSONString(obj));
    }

    public static void main(String[] args) {
        Student student = new Student();
        student.setIdNumber("220302200011170321");
        student.setName("测试");
        String str = objectToJson(student);
        System.out.println("java对象转换为JSON字符串" + str);

        String jsonStr = "{\"idNumber\":\"220302200011170321\",\"name\":\"测试\"}";
        Object obj = jsonToObject(jsonStr);
        System.out.println("json字符串转换为JSONObject对象" + obj);

        String jsonObj = "{\"idNumber\":\"220302200011170321\",\"name\":\"测试\"}";
        JSONObject jso = jsonToJSONObject(jsonObj);
        System.out.println("JSON字符串转换为java对象" + jso);

        JSONObject jsb = new JSONObject();
        jsb.put("age", "18");
        Object obj1 = jsonObjectToObject(jsb);
        System.out.println("将JSONObject对象转换为java对象" + obj1);

        JSONObject jsonObject = objectToJSONObject(student);
        System.out.println("将java对象转换为JSONObject对象" + jsonObject);


        String str1 = jsonObjectToString(jsb);
        System.out.println("将JSONObject对象转成String字符串" + str1);
    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值