目录

一、集合转字符串

二、字符串转集合

三、对象转字符串

四、字符串转对象

五、对象转JSONObject

六、字符串转JSONObject

七、JSONObject和JSONArray操作

1.获取单个值

2.获取对象

3.获取集合


一、集合转字符串

java hutool生成toString方法_Data

package com.saas.demo;

import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * list转string
 */
public class HutoolDemo {
    public static void main(String[] args) {
        List<Student> studentList = new ArrayList<Student>();
        studentList.add(new Student("小明",23));
        studentList.add(new Student("小红",24));
        studentList.add(new Student("小兰",22));
        //将集合转换成字符串
        String jsonStr = JSONUtil.toJsonStr(studentList);
        System.out.println("value:"+jsonStr);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

二、字符串转集合

java hutool生成toString方法_System_02

package com.saas.demo;

import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * string转list
 */
public class HutoolDemo {
    public static void main(String[] args) {
        List<Student> studentList = new ArrayList<Student>();
        studentList.add(new Student("小明",23));
        studentList.add(new Student("小红",24));
        studentList.add(new Student("小兰",22));
        //将集合转换成字符串
        String jsonStr = JSONUtil.toJsonStr(studentList);
        System.out.println("value:"+jsonStr);
        System.out.println("------------------------------------------------");
        //将字符串转换成集合
        List<Student> newStudentList = JSONUtil.toList(jsonStr,Student.class);
        System.out.println("value:"+newStudentList);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

三、对象转字符串

java hutool生成toString方法_System_03

package com.saas.demo;

import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;

/**
 * object转string
 */
public class HutoolDemo {
    public static void main(String[] args) {
        Student student = new Student("小明",23);
        //将对象转换成字符串
        String jsonStr = JSONUtil.toJsonStr(student);
        System.out.println("value:"+jsonStr);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

四、字符串转对象

java hutool生成toString方法_java_04

package com.saas.demo;

import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;

/**
 * string转object
 */
public class HutoolDemo {
    public static void main(String[] args) {
        Student student = new Student("小明",23);
        //将对象转换成字符串
        String jsonStr = JSONUtil.toJsonStr(student);
        System.out.println("value:"+jsonStr);
        System.out.println("------------------------------------------------");
        //将字符串转换成对象
        Student newStudent = JSONUtil.toBean(jsonStr, Student.class);
        System.out.println("value:"+newStudent);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

五、对象转JSONObject

java hutool生成toString方法_java_05

package com.saas.demo;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * object转jsonobject
 */
public class HutoolDemo {
    public static void main(String[] args) {
        //模拟数据,一个学生归属一个班级,一个学生有多位老师
        Classes classes = new Classes("小学二年级",30);
        List<Teacher> teacherList  = new ArrayList<>();
        for(int i=1;i<3;i++){
            teacherList.add(new Teacher("老师"+i,30+i));
        }
        Student student = new Student("小明",23,classes,teacherList);
        //将对象转换成JSONObject
        JSONObject jsonObject = JSONUtil.parseObj(student);
        System.out.println("value:"+jsonObject);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
    //班级
    private Classes classes;
    //老师集合
    private List<Teacher> teacherList;
}

@Data
@AllArgsConstructor
class Classes {
    //名称
    private String name;
    //学生数量
    private Integer studentCount;
}

@Data
@AllArgsConstructor
class Teacher {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

六、字符串转JSONObject

java hutool生成toString方法_Data_06

package com.saas.demo;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * string转jsonobject
 */
public class HutoolDemo {
    public static void main(String[] args) {
        //模拟数据,一个学生归属一个班级,一个学生有多位老师
        Classes classes = new Classes("小学二年级",30);
        List<Teacher> teacherList  = new ArrayList<>();
        for(int i=1;i<3;i++){
            teacherList.add(new Teacher("老师"+i,30+i));
        }
        Student student = new Student("小明",23,classes,teacherList);
        //将对象转String
        String jsonStr = JSONUtil.toJsonStr(student);
        System.out.println("value:"+jsonStr);
        System.out.println("------------------------------------------------");
        //将对象转换成JSONObject
        JSONObject jsonObject = JSONUtil.parseObj(jsonStr);
        System.out.println("value:"+jsonObject);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
    //班级
    private Classes classes;
    //老师集合
    private List<Teacher> teacherList;
}

@Data
@AllArgsConstructor
class Classes {
    //名称
    private String name;
    //学生数量
    private Integer studentCount;
}

@Data
@AllArgsConstructor
class Teacher {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

七、JSONObject和JSONArray操作

1.获取单个值

java hutool生成toString方法_Data_07

package com.saas.demo;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * jsonobject操作
 */
public class HutoolDemo {
    public static void main(String[] args) {
        //模拟数据,一个学生归属一个班级,一个学生有多位老师
        Classes classes = new Classes("小学二年级",30);
        List<Teacher> teacherList  = new ArrayList<>();
        for(int i=1;i<3;i++){
            teacherList.add(new Teacher("老师"+i,30+i));
        }
        Student student = new Student("小明",23,classes,teacherList);
        System.out.println("------------------------------------------------");
        //将对象转换成JSONObject
        JSONObject jsonObject = JSONUtil.parseObj(student);
        System.out.println("value:"+jsonObject);
        System.out.println("------------------------------------------------");
        //获取单个值
        String studentName = jsonObject.getStr("name");
        System.out.println("value:"+studentName);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
    //班级
    private Classes classes;
    //老师集合
    private List<Teacher> teacherList;
}

@Data
@AllArgsConstructor
class Classes {
    //名称
    private String name;
    //学生数量
    private Integer studentCount;
}

@Data
@AllArgsConstructor
class Teacher {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

2.获取对象

java hutool生成toString方法_System_08

package com.saas.demo;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * jsonobject操作
 */
public class HutoolDemo {
    public static void main(String[] args) {
        //模拟数据,一个学生归属一个班级,一个学生有多位老师
        Classes classes = new Classes("小学二年级",30);
        List<Teacher> teacherList  = new ArrayList<>();
        for(int i=1;i<3;i++){
            teacherList.add(new Teacher("老师"+i,30+i));
        }
        Student student = new Student("小明",23,classes,teacherList);
        System.out.println("------------------------------------------------");
        //将对象转换成JSONObject
        JSONObject jsonObject = JSONUtil.parseObj(student);
        System.out.println("value:"+jsonObject);
        System.out.println("------------------------------------------------");
        //获取对象 方式一
        Classes newClasses = jsonObject.get("classes",Classes.class);
        System.out.println("value:"+newClasses);
        System.out.println("------------------------------------------------");
        //获取对象 方式二
        JSONObject  classesJson = jsonObject.getJSONObject("classes");
        System.out.println("value:"+classesJson);
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
    //班级
    private Classes classes;
    //老师集合
    private List<Teacher> teacherList;
}

@Data
@AllArgsConstructor
class Classes {
    //名称
    private String name;
    //学生数量
    private Integer studentCount;
}

@Data
@AllArgsConstructor
class Teacher {
    //姓名
    private String name;
    //年龄
    private Integer age;
}

3.获取集合

java hutool生成toString方法_System_09

package com.saas.demo;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * jsonobject操作
 */
public class HutoolDemo {
    public static void main(String[] args) {
        //模拟数据,一个学生归属一个班级,一个学生有多位老师
        Classes classes = new Classes("小学二年级",30);
        List<Teacher> teacherList  = new ArrayList<>();
        for(int i=1;i<3;i++){
            teacherList.add(new Teacher("老师"+i,30+i));
        }
        Student student = new Student("小明",23,classes,teacherList);
        System.out.println("------------------------------------------------");
        //将对象转换成JSONObject
        JSONObject jsonObject = JSONUtil.parseObj(student);
        System.out.println("value:"+jsonObject);
        System.out.println("------------------------------------------------");
        //获取集合 方式一
        List<Teacher> newTeacherList = jsonObject.get("teacherList",List.class);
        System.out.println("value:"+newTeacherList);
        System.out.println("------------------------------------------------");
        //获取集合 方式二
        JSONArray classesJsonArray = jsonObject.getJSONArray("teacherList");
        System.out.println("value:"+classesJsonArray);
        for(int j=0; j< classesJsonArray.size(); j++){
            JSONObject json = classesJsonArray.getJSONObject(j);
            String name = json.getStr("name");
            Integer age = json.getInt("age");
            System.out.println("name:"+name + " age:"+age);
        }
    }
}

@Data
@AllArgsConstructor
class Student {
    //姓名
    private String name;
    //年龄
    private Integer age;
    //班级
    private Classes classes;
    //老师集合
    private List<Teacher> teacherList;
}

@Data
@AllArgsConstructor
class Classes {
    //名称
    private String name;
    //学生数量
    private Integer studentCount;
}

@Data
@AllArgsConstructor
class Teacher {
    //姓名
    private String name;
    //年龄
    private Integer age;
}