原创转载请注明出处:http://agilestyle.iteye.com/blog/2380750
Maven Dependency
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.fool.fastjson</groupId> <artifactId>fastjson-demo</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.33</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.6</version> </dependency> </dependencies> </project>
FastJsonTest.java
package org.fool.fastjson; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import java.util.ArrayList; import java.util.List; public class FastJsonTest { public static void main(String[] args) { User guest = new User("guest", 30); User root = new User("root", 40); UserGroup userGroup = new UserGroup(); userGroup.setName("admin"); userGroup.getUsers().add(guest); userGroup.getUsers().add(root); String jsonStr = JSON.toJSONString(userGroup); System.out.println("1..." + jsonStr); UserGroup ug = JSON.parseObject(jsonStr, UserGroup.class); System.out.println("2..." + ug); User[] userArray = new User[2]; userArray[0] = guest; userArray[1] = root; String jsonStr2 = JSON.toJSONString(userArray); System.out.println("3..." + jsonStr2); List<User> userList = JSON.parseArray(jsonStr2, User.class); System.out.println("4..." + userList); String temp = "{\"status\":true}"; JSONObject jsonObject = JSON.parseObject(temp); Boolean b = (Boolean) jsonObject.get("status"); System.out.println("5..." + b); } private static class User { private String name; private int age; public User() { } public User(String name, int age) { this.name = name; this.age = age; } @Override public String toString() { return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } private static class UserGroup { private String name; private List<User> users = new ArrayList<User>(); public UserGroup() { } public UserGroup(String name, List<User> users) { this.name = name; this.users = users; } @Override public String toString() { return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE); } 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; } } }
Console Output