例子1 Java取出json字符串中某一key的值
import com.alibaba.fastjson.JSONObject;
public class JsonTest {
public static void main(String[] args) {
// json串(以自己的为准)
String str = "{"id":"75","shoppingCartItemList":[{"id":"407","num":"10"}]}";
JSONObject jsonObject = JSONObject.parseObject(str);
// 获取到key为shoppingCartItemList的值
String r = jsonObject.getString("shoppingCartItemList");
System.out.println(r);
}
例子2 数据格式转换
package com.itheima.com.itheima.jsonlib;
import com.itheima.domain.Province;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.junit.Test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Demo {
@Test
//数组
public void f1() {
String[] arr = {"aaa", "bbb", "cc"};
JSONArray json = JSONArray.fromObject(arr);
System.out.println(json); //["aaa","bbb","cc"]
}
@Test
//list
public void f2() {
List<String> list = new ArrayList<>();
list.add("11");
list.add("22");
list.add("33");
JSONArray json = JSONArray.fromObject(list);
System.out.println(json); //["11","22","33"]
}
@Test
//bean
public void f3() {
Province pro = new Province();
pro.setName("北京");
pro.setProvinceid(1);
JSONObject json = JSONObject.fromObject(pro);
System.out.println(json); //{"name":"北京","provinceid":1}
}
@Test
//map
public void f4() {
Map<String, Object> map = new HashMap<>();
map.put("username", "tom");
map.put("age", 18);
JSONObject json = JSONObject.fromObject(map);
System.out.println(json); //{"age":18,"username":"tom"}
}
@Test
//list里面放bean
public void f5() {
List<Province> list = new ArrayList<>();
list.add(new Province(1, "bj"));
list.add(new Province(2, "tj"));
list.add(new Province(3, "nj"));
list.add(new Province(4, "dj"));
JSONArray json = JSONArray.fromObject(list);
System.out.println(json); //[{"name":"bj","provinceid":1},{"name":"tj","provinceid":2},{"name":"nj","provinceid":3},{"name":"dj","provinceid":4}]
}
}
##遇到的问题
有时候使用JSONObject的时候出现
java.lang.ClassNotFoundException:org.apache.commons.lang.exception.NestableRuntimeException
网上查了一下发现在使用JSON的使用的时候,不光要导入JSON这个包,同时还要导入另外三个包
总之,共需要下面的 jars,json-lib方可使用:
commons-beanutils-1.7.0.jar
commons-lang-2.1.jar
ezmorph-1.0.2.jar
json-lib-1.1-jdk15.jar
链接:https://pan.baidu.com/s/1IZ5hadMxLDnzLricTqYNQQ 密码:qx6n