• com.alibaba.fastjson.JSONObject之对象与JSON转换方法


     com.alibaba.fastjson.JSONObject时经常会用到它的转换方法,包括Java对象转成JSON串、JSON对象,JSON串转成java对象、JSON对象,JSON对象转换Java对象、JSON串等,使用方法总结如下,持续更新...

    1、Java对象-->JSON对象

    (JSONObject)JSONObject.toJSON(Java对象实例)

    复制代码
     1 public class JSON2JavaTest{
     2     public static void main(String[] args) {
     3         Student stu = new Student("公众号BiggerBoy", "m", 2);
     4 
     5         //Java对象转化为JSON对象
     6         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
     7         System.out.println("Java对象转化为JSON对象\n" + jsonObject);//{"name":"公众号编程大道","age":2,"sex":"m"}
     8         
     9     }
    10 }
    复制代码
     

    2、Java对象-->JSON字符串

    JSONObject.toJSONString(Java对象实例)

    复制代码
    1 public class JSON2JavaTest{
    2     public static void main(String[] args) {
    3         Student stu = new Student("公众号BiggerBoy", "m", 2);
    4 
    5         //Java对象转换成JSON字符串
    6         String stuString = JSONObject.toJSONString(stu);
    7         System.out.println("Java对象转换成JSON字符串\n" + stuString);//{"age":2,"name":"公众号编程大道","sex":"m"}
    8     }
    9 }
    复制代码
     

     3、JSON对象-->JSON字符串

    JSONObject.toJSONString();

    复制代码
     1 public class JSON2JavaTest{
     2     public static void main(String[] args) {
     3         Student stu = new Student("公众号BiggerBoy", "m", 2);
     4 
     5         //先转成JSON对象
     6         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
     7 
     8         //JSON对象转换为JSON字符串
     9         String jsonString = jsonObject.toJSONString();
    10         System.out.println("JSON对象转换为JSON字符串\n" + jsonString);//{"name":"公众号编程大道","age":2,"sex":"m"}
    11 
    12     }
    13 }
    复制代码
     

     4、JSON对象-->Java对象

     JSONObject.toJavaObject(JSON对象实例, Java对象.class);

    复制代码
    public class JSON2JavaTest{
        public static void main(String[] args) {
            Student stu = new Student("公众号BiggerBoy", "m", 2);
    
            //先转成JSON对象
            JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
            
            //JSON对象转换成Java对象
            Student student = JSONObject.toJavaObject(jsonObject, Student.class);
            System.out.println("JSON对象转换成Java对象\n" + student);//Student{name='公众号编程大道', sex='m', age=2}
        }
    }
    复制代码
     

     5、JSON字符串-->JSON对象

    JSONObject.parseObject(JSON字符串)

    复制代码
     1 public class JSON2JavaTest{
     2     public static void main(String[] args) {
     3         String stuString = "{\"age\":2,\"name\":\"公众号 BiggerBoy\",\"sex\":\"m\"}";
     4 
     5         //JSON字符串转换成JSON对象
     6         JSONObject jsonObject1 = JSONObject.parseObject(stuString);
     7         System.out.println("JSON字符串转换成JSON对象\n" + jsonObject1);//{"sex":"m","name":"公众号编程大道","age":2}
     8     }
     9 }
    复制代码
     

     6、JSON字符串-->Java对象

    JSONObject.parseObject(JSON字符串, Java对象.class);

    复制代码
    1 public class JSON2JavaTest{
    2     public static void main(String[] args) {
    3         String stuString = "{\"age\":2,\"name\":\"公众号 BiggerBoy\",\"sex\":\"m\"}";
    4 
    5         //JSON字符串转换成Java对象
    6         Student student1 = JSONObject.parseObject(stuString, Student.class);
    7         System.out.println("JSON字符串转换成Java对象\n" + student1);//Student{name='公众号编程大道', sex='m', age=2}
    8     }
    9 }
    复制代码
     

    7、JSON字符串-->List<Java对象>

     List<T> parseArray(JSON字符串, Java对象.class) 

    复制代码
    public class JSON2JavaTest{
        public static void main(String[] args) {
            String stuString = "[{\"age\":2,\"name\":\"公众号\",\"sex\":\"m\"},{\"age\":18,\"name\":\"BiggerBoy\",\"sex\":\"m\"}]";
    
            //JSON字符串转换成Java对象
            List<Student> studentList = JSONObject.parseArray(stuString, Student.class);
            System.out.println("JSON字符串转换成Java对象list\n" +studentList );
       }
    }
    复制代码

     文章出处,感谢大佬帅气的总结~

  • 相关阅读:
    Ubuntu vsftp复制文件到远端时错误,Permission denied
    linux 常用命令
    vbox安装ubuntu之后挂载共享文件夹无权限访问的问题以及改了主机名,导致命令行不能解析主机名的问题
    java 中的valueOf方法和强转
    读写文件,用代码在讲html文件转为jsp文件
    hibernate查询之后用el表达式取值时遇到的问题
    考研:操作系统:进程同步—信号量实现同步互斥(PV操作)
    考研:操作系统:处理机调度——几种经典的调度算法
    KMP算法
    mysql出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 错误
  • 原文地址:https://www.cnblogs.com/yinyl/p/16068071.html
Copyright © 2020-2023  润新知