Java使用fastjson对String、JSONObject、JSONArray相互转换

yizhihongxing

Java使用fastjson对String、JSONObject、JSONArray相互转换

fastjson是一个JSON解析库,能够将Java对象与JSON文本相互转换。在Java中,我们常常需要将一个JSON数据解析成Java对象,或者需要把Java对象序列化成JSON文本,这就可以通过fastjson来实现。本文将详细讲解Java使用fastjson对String、JSONObject、JSONArray相互转换的完整攻略。

1. 导入fastjson库

在工程中引入fastjson库,有两个方式,一种是下载fastjson JAR包,手动将其添加到项目中, 另一种则是在maven的pom.xml中添加如下依赖:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.62</version>
</dependency>

2. String转JSONObject

如果将一个JSON格式的字符串转为Java的JSONObject对象,可以使用如下代码:

import com.alibaba.fastjson.JSONObject;

public class StringToJSONObject {

    public static void main(String[] args) {

        String jsonString = "{\"name\":\"张三\",\"age\":18,\"gender\":\"男\"}";

        JSONObject jsonObject = JSONObject.parseObject(jsonString);

        System.out.println("JSONObject对象:" + jsonObject);

    }

}

3. String转JSONArray

如果将一个JSON格式的字符串转为Java的JSONArray对象,可以使用如下代码:

import com.alibaba.fastjson.JSONArray;

public class StringToJSONArray {

    public static void main(String[] args) {

        String jsonString = "[{\"name\":\"张三\",\"age\":18,\"gender\":\"男\"}," +
                             "{\"name\":\"李四\",\"age\":20,\"gender\":\"男\"}," +
                             "{\"name\":\"王五\",\"age\":22,\"gender\":\"女\"}]";

        JSONArray jsonArray = JSONArray.parseArray(jsonString);

        System.out.println("JSONArray对象:" + jsonArray);

    }

}

4. JSONObject转String

如果将Java的JSONObject对象转为JSON格式的字符串,可以使用如下代码:

import com.alibaba.fastjson.JSONObject;

public class JSONObjectToString {

    public static void main(String[] args) {

        JSONObject jsonObject = new JSONObject();
        jsonObject.put("name", "张三");
        jsonObject.put("age", 18);
        jsonObject.put("gender", "男");

        String jsonString = jsonObject.toJSONString();

        System.out.println("JSON格式字符串:" + jsonString);

    }

}

5. JSONArray转String

如果将Java的JSONArray对象转为JSON格式的字符串,可以使用如下代码:

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

public class JSONArrayToString {

    public static void main(String[] args) {

        JSONArray jsonArray = new JSONArray();

        JSONObject jsonObject1 = new JSONObject();
        jsonObject1.put("name", "张三");
        jsonObject1.put("age", 18);
        jsonObject1.put("gender", "男");

        JSONObject jsonObject2 = new JSONObject();
        jsonObject2.put("name", "李四");
        jsonObject2.put("age", 20);
        jsonObject2.put("gender", "男");

        JSONObject jsonObject3 = new JSONObject();
        jsonObject3.put("name", "王五");
        jsonObject3.put("age", 22);
        jsonObject3.put("gender", "女");

        jsonArray.add(jsonObject1);
        jsonArray.add(jsonObject2);
        jsonArray.add(jsonObject3);

        String jsonString = jsonArray.toJSONString();

        System.out.println("JSON格式字符串:" + jsonString);

    }

}

以上就是Java使用fastjson对String、JSONObject、JSONArray相互转换的完整攻略,包括两个示例说明。通过使用fastjson,我们可以轻松地实现JSON与Java对象的互相转换。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java使用fastjson对String、JSONObject、JSONArray相互转换 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Java开发中常用记录

    关于”Java开发中常用记录”的完整攻略,我会从以下几个方面进行详细讲解: 主要记录内容 在Java开发中,常用的记录内容有:日志信息、异常信息、性能统计、代码执行路径等。这些信息对于问题排查、性能优化等方面非常有帮助。 常用记录工具 Java开发中常用的记录工具有:log4j、logback、java.util.logging等。这些工具可以帮助我们方便地…

    Java 2023年5月30日
    00
  • Spring Boot项目使用Flyway的详细教程

    当我们开发Spring Boot项目时,我们通常需要在数据库中创建各种数据表、视图等数据结构。随着项目的迭代,这些数据结构往往需要不断地进行更新、迁移、升级等操作。为了方便地管理这些数据库变更,我们可以使用Flyway工具来进行数据库迁移管理。下面是一份详细的Spring Boot项目使用Flyway的教程。 安装和配置Flyway 在Spring Boot…

    Java 2023年5月26日
    00
  • SpringBoot中处理的转发与重定向方式

    SpringBoot中处理转发与重定向的方式有以下几种: 转发(forward) 使用转发的方式可以将请求转发给另一个URL处理,同时请求的地址栏不会发生改变。SpringBoot中使用ModelAndView来实现请求转发。示例如下: @RequestMapping("/test") public ModelAndView test()…

    Java 2023年6月15日
    00
  • Linux系统中jdk环境配置方式

    下面是详细的Linux系统中配置jdk环境的攻略。包含两条示例说明,以供参考: 安装JDK 下载Java JDK 首先需要去Oracle官网下载适合的JDK版本,根据系统位数选择相应的版本进行下载。安装前请确保已经安装了wget和tar。 bash $ wget –no-check-certificate –no-cookies –header \ “…

    Java 2023年5月24日
    00
  • linux安装RocketMQ实例步骤

    下面是“Linux安装RocketMQ实例步骤”的完整攻略。 准备工作 在进行安装前,请确保你已经完成如下步骤: 安装好Java环境(建议使用JDK 8及以上版本)。 确认安装好了RocketMQ服务端的压缩包(下载地址详见官网)。 确认你拥有安装并运行RocketMQ所需的系统权限。 安装步骤 下载RocketMQ服务端的压缩包,解压到指定目录下: bas…

    Java 2023年6月2日
    00
  • Spring MVC返回的json去除根节点名称的方法

    使用Spring MVC构建RESTful接口时,通常会使用JSON作为数据格式进行传输。在返回JSON数据时,往往希望去掉根节点名称以减少数据传输量,提高接口访问速度。下面是实现此功能的完整攻略: 1. 设置消息转换器 Spring MVC默认会使用Jackson库进行JSON数据的序列化和反序列化。 在控制器方法中,我们可以使用@ResponseBody…

    Java 2023年5月26日
    00
  • Java设计模式之java命令模式详解

    Java设计模式之Java命令模式详解,主要介绍了命令模式的定义、结构、应用场景、优缺点以及如何在Java中实现命令模式。 命令模式的定义:将一个请求封装成一个对象,从而使用户可以用不同的请求对客户端进行参数化,即可以用请求对请求分类,同时支持请求排队、记录请求日志、撤销操作等功能。 命令模式的结构:命令(Command)、具体命令(ConcreteComm…

    Java 2023年5月24日
    00
  • Java基本数据类型族谱与易错点梳理解析

    Java基本数据类型族谱与易错点梳理解析 数据类型族谱 在Java中,数据类型分为基本数据类型和引用数据类型两种。它们的关系如下图所示: Object ▲ │ ┌────────────┼─────────┐ Number Character Boolean ▲ ▲ ▲ │ │ │ ┌──────┴─────┐ ┌──────┴────┐ ┌─┴──┐ By…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部