fastjson(二)基本使用
2018-01-25 20:46
435 查看
本节我们来介绍一下 fastjson 的基本使用
序列化:
反序列化:
泛型反序列化:
Group 类:
测试类:
输出结果:
一、主要API
fastjson入口类是com.alibaba.fastjson.JSON,主要的API是JSON.toJSONString,和parseObject。package com.alibaba.fastjson; public abstract class JSON { public static final String toJSONString(Object object); public static final <T> T parseObject(String text, Class<T> clazz, Feature... features); }
序列化:
String jsonString = JSON.toJSONString(obj);
反序列化:
VO vo = JSON.parseObject("...", VO.class);
泛型反序列化:
import com.alibaba.fastjson.TypeReference; List<VO> list = JSON.parseObject("...", new TypeReference<List<VO>>() {});
二、基本使用
User 类:package json.fastjson.base; public class User { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "User [id=" + id + ", name=" + name + "]"; } }
Group 类:
package json.fastjson.base; import java.util.ArrayList; import java.util.List; public class Group { private Long id; private String name; private List<User> users = new ArrayList<User>(); public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<User> getUsers() { return users; } public void setUsers(List<User> users) { this.users = users; } public void addUser(User user) { users.add(user); } @Override public String toString() { return "Group [id=" + id + ", name=" + name + ", users=" + users + "]"; } }
测试类:
package json.fastjson.base; import java.util.List; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; public class TestBase { public static void main(String[] args) { Group group = new Group(); group.setId(0L); group.setName("admin"); User guestUser = new User(); guestUser.setId(2L); guestUser.setName("guest"); User rootUser = new User(); rootUser.setId(3L); rootUser.setName("root"); group.addUser(guestUser); group.addUser(rootUser); List<User> userList = group.getUsers(); // Group序列化 String jsonString = JSON.toJSONString(group); System.out.println("Group序列化:" + jsonString); // Group反序列化 jsonString = "{\"id\":0,\"name\":\"admin\",\"users\":[{\"id\":2,\"name\":\"guest\"},{\"id\":3,\"name\":\"root\"}]}"; group = JSON.parseObject(jsonString, Group.class); System.out.println("Group反序列化:" + group); // List序列化 jsonString = JSON.toJSONString(userList); System.out.println("List序列化:" + jsonString); // List泛型反序列化 jsonString = "[{\"id\":2,\"name\":\"guest\"},{\"id\":3,\"name\":\"root\"}]"; userList = JSON.parseObject(jsonString, new TypeReference<List<User>>() {}); System.out.println("List反序列化:" + userList); } }
输出结果:
Group序列化:{"id":0,"name":"admin","users":[{"id":2,"name":"guest"},{"id":3,"name":"root"}]} Group反序列化:Group [id=0, name=admin, users=[User [id=2, name=guest], User [id=3, name=root]]] List序列化:[{"id":2,"name":"guest"},{"id":3,"name":"root"}] List反序列化:[User [id=2, name=guest], User [id=3, name=root]]
相关文章推荐
- fastJson的基本使用
- fastjson 基本使用方法
- FastJson的基本使用
- fastjson 基本使用方法
- fastjson的基本使用方法
- 【Java】Java-fastjson-基本使用方法
- JSON-FastJson的基本使用方法
- FastJson的基本使用
- FastJson的基本使用
- Json解析开源框架--FastJson 的基本使用
- fastjson的基本使用方法
- Fastjson简介和基本使用
- FastJson的基本使用
- FastJson的基本使用
- 码农小汪之Alibaba-fastjson的基本使用
- fastjson基本使用
- Java 中FastJson的基本使用
- alibaba fastjson的使用总结和心得
- andorid 中fastJson 的使用
- 使用Fastjson序列化与反序列化对象