常用工具类---JSONUtil

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
注册配置 MSE Nacos/ZooKeeper,118元/月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 这段内容提供了Java中将不同数据结构转换为JSON的代码示例。包括使用`JSONArray`将一维和二维数组、对象、Map及List转换为JSON字符串,并展示了如何从JSON字符串转换回Object、List以及XML到JSON的转换。

引用

以下包在未主动声明前提下,均为下述引用

import cn.hutool.core.util.XmlUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import java.util.List;
import java.util.Map;

一维数组转JSON

public static String arrToJson(String[] arr) {
    String jsonStr = JSONArray.fromObject(arr).toString();
    System.out.println("数组转json:" + jsonStr);
    return jsonStr;
}

二维数组转JSON

public static String twoArrToJson(String[][] arr) {
    String jsonStr = JSONArray.fromObject(arr).toString();
    System.out.println("数组转json:" + jsonStr);
    return jsonStr;
}

Object转JSON

public static String objectToJson(Object object) {
    String jsonStr = JSONArray.fromObject(object).toString();
    System.out.println("对象转json:" + jsonStr);
    return jsonStr;
}

JSON转Object

public static <T> T jsonToObject(String pojo, Class<T> clazz) {
    return com.alibaba.fastjson.JSONObject.parseObject(pojo, clazz);
}

MapJSON

public static String mapToJson(Map<String, Object> map) {
    String jsonStr = JSONObject.fromObject(map).toString();
    System.out.println("map转json:" + jsonStr);
    return jsonStr;
}

ListJSON

public static String listToJson(List<?> list) {
    String jsonStr = JSONArray.fromObject(list).toString();
    System.out.println("list转json:" + jsonStr);
    return jsonStr;
}

JSON转List

public static <T> List<T> jsonToList(String jsonString, Class<T> clazz) {
    List<T> ts = com.alibaba.fastjson.JSONArray.parseArray(jsonString, clazz);
    return ts;
}

StringJSON

public static void stringToJson(String[] args) {
    String str = "{\"result\":\"success\",\"message\":\"成功!\"}";
    JSONObject json = JSONObject.fromObject(str);
    System.out.println(json.toString());
}

XMLJSON

public static JSONObject xmlToJson(String xmlStr) {
    Map<String, Object> result = XmlUtil.xmlToMap(xmlStr);
    JSONObject jsonObject = JSONObject.fromObject(result);
    System.out.println(jsonObject);
    return jsonObject;
}


相关文章
|
机器学习/深度学习 IDE 开发工具
动物分类识别教程+分类释义+界面展示-1
动物分类识别教程+分类释义+界面展示-1
|
Java
基于Java对STOMP服务端进行测试
在10000用户的并发下,客户端连接用时 5.5秒,500万条数据发送用时 55秒左右
683 0
|
12月前
|
弹性计算 固态存储 大数据
阿里云服务器多少钱一年?2024年7月最新租用价格表曝光!
阿里云2024年服务器租用费用更新,轻量应用服务器2核2G3M带宽年费82元,折合6.8元/月;2核4G5M带宽ECS优惠价199元/年。新老用户同享99元/年的2核2G经济型e实例,4核16G游戏服务器70元/月,8核32G服务器160元/月。GPU服务器gn6v、gn6i等最高配置月费4685.20元起。续费折扣根据时长,最长享3折优惠。按小时计费,如通用型u1-c1m4.large 0.45元/小时。带宽和云盘亦有多种计费选项。详情参见阿里云官网。
699 4
|
SQL 关系型数据库 数据库
实时计算 Flink版操作报错之使用SQL 将 PostgreSQL 的 date 类型字段转换为 TIMESTAMP 类型时遇到报错,该如何处理
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
传感器 安全 物联网
物联网(IoT)设备的硬件选型与集成技术博文
【6月更文挑战第28天】物联网设备硬件选型与集成聚焦关键要素:功能匹配、性能稳定性、兼容扩展及成本效益。嵌入式系统、通信协议、数据处理和安全性技术确保集成效果,支撑高效、智能的IoT系统,驱动家居、城市与工业自动化变革。
|
JSON Java 网络架构
RPC与REST对比指南
【5月更文挑战第19天】使用RPC可以得到很轻的载荷、传输较轻、速度快、协议层少、转换快,但是会产生依赖性,做不到平台无关性,在安全性上较差。使用REST风格,则具备平台无关性、高安全性和独立性。
|
存储 Java 网络安全
ZooKeeper【搭建 02】apache-zookeeper-3.6.0 集群版(准备+安装配置+启动验证)
【4月更文挑战第8天】ZooKeeper【搭建 02】apache-zookeeper-3.6.0 集群版(准备+安装配置+启动验证)
209 1
|
JSON Java 数据格式
Could not extract response: no suitable HttpMessageConverter found for ..content type [text/html...]
Could not extract response: no suitable HttpMessageConverter found for ..content type [text/html...]
1164 0
|
JSON 数据格式 Python
Python报错:TypeError: the JSON object must be str, bytes or bytearray, not ‘dict‘
Python报错:TypeError: the JSON object must be str, bytes or bytearray, not ‘dict‘
1777 0
|
算法 安全 Java
[转载]加密解密算法【RSA、AES、DES、MD5】介绍和使用
为了防止我们的数据泄露,我们往往会对数据进行加密,特别是敏感数据,我们要求的安全性更高。下面将介绍几种常用的加密算法使用。这些算法的加密对象都是基于二进制数据,如果要加密字符串就使用统一编码(如:utf8)进行编码后加密。
2794 0