JSON常用方法

一. java 

1.导入包

com.alibaba.fastjson

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.4</version>
</dependency>

 

net.sf.json

<dependency>
    <groupId>net.sf.json-lib</groupId>
    <artifactId>json-lib</artifactId>
    <version>2.4</version>
    <classifier>jdk15</classifier> //此处要加上jdk版本号
</dependency

注意JDK版本

 

2.常用方法

2.1 转换

字符串转化为JSON对象

//字符串转化为对象
String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSON.parseObject(str2);

字符串转化为JSON数组

fastjson

String str2 = "[{\"note\":\"1\"},{\"note\":\"2\"}]";
JSONArray jsonObject2 =JSONObject.parseArray(str2);

//获取某一个KEY的值 并 转化为数组
//先转化为json对象
String str=........;
JSONObject jsonOb=JSONObject.parseObject(a).getString("datagrid");
//对象当中获取key对应的值
String str2=jsonOb.getString("key");
JSONArray jsonAr=JSONObject.parseArray(str2);

net.sf.json

String data=.....;
JSONArray json = JSONArray.fromObject(data);

 

JSONObject 转化为字符

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
//两种方法输出结果一样
System.out.println(jsonObject2.toJSONString());
System.out.println(jsonObject2.toString());

 

JSONObject 转化为指定的类

net.sf.json

 ClassName info = (ClassName ) JSONObject.toBean(JSONObject对象, ClassName .class);

 

2.2 JSON对象

替换JSON字符串中的指定KEY的值

JSONObject arrayInfo = new JSONObject();
赋值...
//替换 color 的值
arrayInfo .put("color","blue");

删掉JSON字符串中的指定的KEY

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
jsonObject2.remove("success");
System.out.println(jsonObject2);

 

 2.3 JSON数组

获取JSON对象中的JSON对象

JSONObject job = JSONArray对象.getJSONObject(i);

 

JSON数字添加JSON对象

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
JSONArray arrayInfo1 = new JSONArray();
arrayInfo1.add(jsonObject2 );

 

2.4 为空判断

json对象==null || json对象.isEmpty()

  

二.js 

删除指定的KEY

delete json对象['keyname'];

delete json对象.keyname;

 

posted @ 2021-10-24 21:23  工具人的自觉  阅读(225)  评论(0编辑  收藏  举报