1.在java中,我们经常会用到json字符串和json对象的相互转化。

 

首先导入fastjson依赖

    <!-- fastjson -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.47</version>
        </dependency>

1.json字符串转化为java实体类 (parseObject)

ApprovalVo approvalVo = JSON.parseObject(str, ApprovalVo.class);
// str == json字符串
// ApprovalVo == 实体类

2.json字符串转化为list对象 (parseArray)

String str2 = "[{'password':'123123','username':'zhangsan'},{'password':'321321','username':'lisi'}]";
List<User> users = JSON.parseArray(jsonStr2, User.class);

3.json字符串转化为复杂java对象 (parseObject)

//  复杂对象->>>>对象中嵌套对象的
String str3 = "{'name':'userGroup','users':[{'password':'123123','username':'zhangsan'},{'password':'321321','username':'lisi'}]}";
UserGroup userGroup = JSON.parseObject(jsonStr3, UserGroup.class);

2. 把实体类转化成json字符串

String str = JSON.toJSONString(ApprovalVo);

6. 把json字符串转化成JSONObject

 String jsonStr = "{\"school\":\"商职\",\"sex\":\"男\",\"name\":\"wjw\",\"age\":22}";
 JSONObject jsonObject = JSONObject.parseObject(jsonStr);
 System.out.println(jsonObject.getString("name"));
 System.out.println(jsonObject.getInteger("age"));