我是靠谱客的博主 霸气棉花糖,最近开发中收集的这篇文章主要介绍Java使用fastjson对String、JSONObject、JSONArray相互转换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

fastjson对String、JSONObject、JSONArray相互转换

fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean

下面主要是本人在工作中经常用到的关于String、JSONObject、JSONArray的相互装换

String——>>>JSONArray

String st = "[{name:Tim,age:25,sex:male},{name:Tom,age:28,sex:male},{name:Lily,age:15,sex:female}]";
JSONArray tableData = JSONArray.parseArray(st);

JSONArray——>>>JSONObject

JSONObject rowData = new JSONObject();
for(int i;i<tableData.length();i++){
    rowData = tableData.getJSONObject[i];
}

String——>>>JSONObject

String st = "{name:Tim,age:25,sex:male}";
JSONObject rowData = JSONObject.parseObject(st);

JSONObject——>>>JSONArray

JSONObject rowData = {info:
                            [
                                {
                                    name:Tim,
                                    age:25,
                                    sex:male
                                },{
                                    name:Tom,
                                    age:28,
                                    sex:male
                                },{
                                    name:Lily,
                                    age:15,
                                    sex:female
                                }
                            ]
                        };
JSONArry tableData = rowData.get("info");

com.alibaba.fastjson.JSONObject、JSONArray与String之间的转换demo

话不多说,直接上代码

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.Map;
/**
 * Created by LH on 2019/2/21 14:08
 */
public class JsonDemo {
    public static void main(String[] args) {
        //1.json字符串转换为对象
        String jsonString="{'name':'42313123','id':'2345','age':12}";
        JSONObject jsonObject = JSONObject.parseObject(jsonString);
        String id = jsonObject.getString("id");
        System.out.println(id);
        //2. JSONObject转化成自定义类对象
        PeoplePo peoplePo1 = JSONObject.parseObject(jsonString, PeoplePo.class);
        System.out.println(peoplePo1);
        //3. JSONObject转化成Map集合
        Map map = JSONObject.parseObject(jsonString, Map.class);
        System.out.println(map);
        //4. 自定义对象转化成json格式的字符串
        PeoplePo peoplePo = new PeoplePo();
        peoplePo.setId("1");
        peoplePo.setAge(11);
        peoplePo.setName("LH");
        String peopleJson = JSON.toJSONString(peoplePo);
        System.out.println(peopleJson);
        //5. String类型转化成JSONObject;
        String str = "{"result":"success","message":"成功!"}";
        JSONObject jsonObject1 = JSONObject.parseObject(str);
        System.out.println(jsonObject1);
        //6. JSONObject转化成JSONArray的两种方式
        String str1 = "{"result":"success","message":"成功!","data":[{"name":"Tom","age":"20"}]}";
        JSONObject jsonToArray = JSONObject.parseObject(str1);
        //方式一
        JSONArray data = jsonToArray.getJSONArray("data");
        System.out.println(data);
        //方式二
        JSONArray jsonArray = JSONArray.parseArray(jsonToArray.getString("data"));
        System.out.println(jsonArray);
        //7. jsonArray转化成JSONObject并取出其中的元素数据
        JSONObject o = (JSONObject) jsonArray.get(0);
        String name = o.getString("name");
        System.out.println(o);
        System.out.println(name);
        System.out.println(jsonArray.toString());
    }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持靠谱客。

最后

以上就是霸气棉花糖为你收集整理的Java使用fastjson对String、JSONObject、JSONArray相互转换的全部内容,希望文章能够帮你解决Java使用fastjson对String、JSONObject、JSONArray相互转换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(195)

评论列表共有 0 条评论

立即
投稿
返回
顶部