欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JSON对象的简单操作

程序员文章站 2022-07-12 16:32:17
...

总结:各种对象间的转换,都可以以json字符串为中转站

package com.dl.myboot.JsonNode;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

/**
 * @author K0570071
 * @version
 * @date 2019/3/05
 */
public class JsonNodeTest {
	public static void main(String[] args) throws IOException {
		// 构造一个map
		Map<String, Integer> map = new HashMap<>();
		map.put("ltq", 100);
		map.put("dl", 98);
		// map转换为JsonObject
		JSONObject json = (JSONObject) JSON.toJSON(map);
		json.put("xq", 78);
		System.out.println("map转换为JsonObject----->" + json);
		/**
		 * 输出结果为 :map转换为JsonObject----->{"ltq":100,"dl":98,"xq":78}
		 */
		// json对象转换成json字符串
		String jsonStr = JSON.toJSONString(json);
		System.out.println("json对象转换成json字符串---->" + jsonStr);
		/**
		 * 输出值为:json对象转换成json字符串---->{"ltq":100,"dl":98,"xq":78}
		 */
		// json字符串转json
		JSONObject json2 = (JSONObject) JSON.parse(jsonStr);
		System.out.println("json字符串转json---->" + json2);
		/**
		 * json字符串转json---->{"ltq":100,"dl":98,"xq":78}
		 */
		// json字符串转jsonNode
		ObjectMapper mapper = new ObjectMapper();
		JsonNode jsonNode = mapper.readTree(jsonStr);
		System.out.println("json字符串转jsonNode---->" + jsonNode);
		/**
		 * json字符串转jsonNode---->{"ltq":100,"dl":98,"xq":78}
		 */
		// jsonNode转json字符串
		String jsonNodeStr = mapper.writeValueAsString(jsonNode);
		System.out.println("jsonNode转json字符串---->" + jsonNodeStr);
		/**
		 * jsonNode转json字符串---->{"ltq":100,"dl":98,"xq":78}
		 */
		// ======================================
		// 构造一个list
		List<String> list = new ArrayList<>();
		list.add("a");
		list.add("b");
		// list转jsonarray字符串
		String jsonarrayStr = JSONArray.toJSONString(list);
		System.out.println("list转jsonarray字符串---->" + jsonarrayStr);
		/**
		 * list转jsonarray字符串---->["a","b"]
		 */
		// jsonarray字符串转jsonarray
		JSONArray jSONArray = (JSONArray) JSONArray.parse(jsonarrayStr);
		jSONArray.add("c");
		System.out.println("jsonarray字符串转jsonarray---->" + jSONArray);
		/**
		 * jsonarray字符串转jsonarray---->["a","b","c"]
		 */
	}
}