fastjson的使用
Posted 听风者-better
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fastjson的使用相关的知识,希望对你有一定的参考价值。
一、JSON形式
1.json对象
数据在大括弧里,以键值对的形式存在
"name":"唐万言","id":1,"age":20
2.json对象数组
数据在方括号里,每个数据都是一个json对象
[
"name":"唐万言0","id":0,"age":20,
"name":"唐万言1","id":1,"age":21,
"name":"唐万言2","id":2,"age":22,
"name":"唐万言3","id":3,"age":23,
"name":"唐万言4","id":4,"age":24
]
3.json字符串
json格式的字符串
"\\"name\\":\\"唐万言\\",\\"id\\":1,\\"age\\":20"
二、fastjson的使用
package com.twy.json;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
public class JsonTest
public static void main(String[] args)
User user = new User();
user.setId(1);
user.setName("唐万言");
user.setAge(20);
//Java对象转为json字符串
String jsonString = JSON.toJSONString(user);
System.out.println(jsonString);
//json字符串转为Java对象
User user1 = JSON.parseObject(jsonString, User.class);
System.out.println(user1);
//Java对象转为json对象
JSONObject jsonObject = (JSONObject) JSON.toJSON(user);
System.out.println(jsonObject);
//json对象转为Java对象
User user2 = JSON.toJavaObject(jsonObject,User.class);
System.out.println(user2);
List<User> list = new ArrayList<>();
for(int i = 0; i < 5; i++)
User u = new User();
u.setId(i);
u.setName("唐万言"+i);
u.setAge(20+i);
list.add(u);
//Java集合对象转为json对象数组
JSONArray jsonArray = (JSONArray) JSONArray.toJSON(list);
System.out.println(jsonArray);
List<User> list2 = new ArrayList<>();
//json对象数组转为Java集合对象
for(int i=0;i<jsonArray.size();i++)
User u = JSON.toJavaObject(jsonArray.getJSONObject(i), User.class);
list2.add(u);
System.out.println(list2);
//json对象转为json字符串
String jsonString1 = JSONObject.toJSONString(jsonObject);
System.out.println(jsonString1);
//json字符串转为json对象
JSONObject jsonObject1 = JSONObject.parseObject(jsonString);
System.out.println(jsonObject1);
//根据key获取value(getXXX 对应类型方法)
System.out.println(jsonObject1.getInteger("id"));
System.out.println(jsonObject1.getInteger("age"));
System.out.println(jsonObject1.getString("name"));
//json字符串转为json数组对象
String jsonArrayStr = JSON.toJSONString(list);
JSONArray jsonArray1 = JSON.parseArray(jsonArrayStr);
System.out.println(jsonArray1);
以上是关于fastjson的使用的主要内容,如果未能解决你的问题,请参考以下文章