fastjson example

原创转载请注明出处: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


 

猜你喜欢

转载自agilestyle.iteye.com/blog/2380750