• java json格式化的两种方式


    Gson
    创建演示所用类

    class Person{
            private String name;
            private int age;
    
            public Person() {}
    
            //java www.fhadmin.cn
            public Person(String name, int age) {
                this.name = name;
                this.age = age;
            }
    
            @Override
            public String toString() {
                return "Person{" +
                        "name='" + name + '\'' +
                        ", age=" + age +
                        '}';
            }
    
            @Override
            public boolean equals(Object o) {
                if (this == o) return true;
                if (o == null || getClass() != o.getClass()) return false;
                Person person = (Person) o;
                return age == person.age &&
                        Objects.equals(name, person.name);
            }
    
            @Override
            public int hashCode() {
                return Objects.hash(name, age);
            }
    
            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;
            }
        }

    如何将一个对象转换为Json字符串

    public static void main(String[] args) {
        /*
            1. 创建一个对象
            2. 将对象转换位JSON字符串格式 
                使用 Gson对象的toJson(object) 方法
                    object  类实例化后的对象名
            
            运行结果如下 (fhadmin.cn)
                {"name":"张三","age":18}
         */
        Person person = new Person("张三",18);
        String json = new Gson().toJson(person);
        System.out.println(json);
    }

    如何将Json字符串转换为对象?

    public static void main(String[] args) {
            /*
                1. 创建一串json字符串
                2. 将json字符串转换为对象  需要两个参数
                    参数1: 传入要转换的字符串
                    参数2: 转换的类名.class
                代码运行结果:
                    Person{name='张三', age=18}
             */
            String jsonStr = "{\"name\":\"张三\",\"age\":18}";
            Person person = new Gson().fromJson(jsonStr,Person.class);
            System.out.println(person);
        }

    FastJson
    使用的演示类如上

    如何将一个对象转换为Json字符串

    public static void main(String[] args) {
            /*
                1. 生成一个对象
                2. 使用 JSON.toJSONString(Object) 将其转换为json字符串
                    Object : 是要转换的对象
                结果如下
                    {"age":15,"name":"张三"}
             */
            Person person = new Person("张三",15);
            String json = JSON.toJSONString(person);
            System.out.println(json);
        }

    如何将Json字符串转换为对象?

    //www.fhadmin.cn
    public static void main(String[] args) {
            /*
                1. 创建要转换的json字符串
                2. 使用 JSON.parseObject(str,Object.class)将json字符串转化为对象
                    str:    要转换的json字符串
                    Object: 要转换的类.class
    
                结果如下:
                    Person{name='张三', age=15}
             */
            String jsonStr = "{\"age\":15,\"name\":\"张三\"}";
            Person person = JSON.parseObject(jsonStr,Person.class);
            System.out.println(person);
        }
  • 相关阅读:
    登录注册功能
    29-----BBS论坛
    linux笔记
    nginx,uwsgi发布web服务器
    linux常用服务部署
    linux系统基础优化及常用命令
    linux基本操作命令
    linux命令
    linux基础
    阿里云服务器搭建
  • 原文地址:https://www.cnblogs.com/teacher11/p/15005720.html
Copyright © 2020-2023  润新知