java中的JSON数据转换方法fastjson

1 maven工程引入fastjson

<?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>com.wujiang.test</groupId>
    <artifactId>test</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <fastjson_version>1.2.28</fastjson_version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>${fastjson_version}</version>
        </dependency>
    </dependencies>
</project>

  

2 类中引入fastjson包

import com.alibaba.fastjson.JSON;

3 使用fastjson

主要用的有两个方法JSON.parseObject和JOSN.toString

JSON.parseObject有很多的方法重载,常用的是这两个

List<String> filePaths = (strJson == null) ? new ArrayList<>() : JSON.parseObject(strJson, new TypeReference<List<String>>(){});
String jsonString = "{name:'Antony',age:'12',sex:'male',telephone:'88888'}";
Staff staff = jsonString == null ? new Staff() : JSON.parseObject(jsonString, Staff.class);

    在JSON.parseObject 的时候,会去填充名称相同的属性。对于Json字符串中没有,而model类有的属性,会为null;对于model类没有,而Json字符串有的属性,不做任何处理。

JSON.toJSONString

String strJson = JSON.toJSONString(this.filePaths);

  

refer:https://blog.csdn.net/antony9118/article/details/71023009

原文地址:https://www.cnblogs.com/Gift/p/10418837.html