Java 实体转Json Json转实体 String转Json Sting转JSONObject Sting转JSONArray

article/2025/6/18 22:18:36

常用:String转Json

JSONObject json = JSONObject.parseObject(token);
token = json.get("token").toString();

一、实体转Json Json转实体 String转Json String转JSONArray

一、JDKjson(json-lib-2.4-jdk15.jar)
//String转Json
JSONObject json= JSONObject.fromObject(responseMsg);//JSONObject解析
//String转JSONArray
JSONArray listJson = JSONArray.fromObject(responseMsg);//JSONArray解析 "[{},{},{}]"
//实体转Json
JSONObject json = JSONObject.fromObject(std);
//List转Json
JSONArray jsonArray = JSONArray.fromObject(list);
//Json转实体
StdCost stdTemp = (StdCost)JSONObject.toBean(json, StdCost.class);
//Json转List
List<StdCost> listTemp = JSONArray.toList(jsonArray, StdCost.class);二、阿里云fastjson(fastjson-1.2.10.jar)
//String转Json
JSONObject json = JSONObject.parseObject(responseMsg);//JSONObject解析
//String转JSONArray
JSONArray listJson = JSONArray.parseArray(responseMsg);//JSONArray解析 "[{},{},{}]"
//实体转Json
JSONObject json = (JSONObject)JSONObject.toJSON(std);
//List转Json
JSONArray jsonArray = (JSONArray)JSONArray.toJSON(list);
//Json转实体
StdCost stdJson = JSONObject.parseObject(json.toString(), StdCost.class);
//Json转List
List<StdCost> listTemp = JSONArray.parseArray(jsonArray.toString(), StdCost.class);

完整示例:

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
if(list != null && list.size() > 0){/*for(int i=0; i<list.size(); i++){StdCost std = list.get(i);System.out.println("--- " + i + "/" + list.size() +" " + std.getStudentName() +" " + std.getStudentIdCard() +" " + std.getFeitype() +" " + std.getFei() +" " + df.format(std.getCreatedDate()));JSONObject json = JSONObject.fromObject(std);listJson.add(json);StdCost stdTemp = (StdCost)JSONObject.toBean(json, StdCost.class);System.out.println(stdTemp.getStudentName() +" " + stdTemp.getStudentIdCard() +" " + stdTemp.getFeitype() +" " + stdTemp.getFei() +" " + df.format(stdTemp.getCreatedDate()));*//*JSONObject json = (JSONObject)JSONObject.toJSON(std);listJson.add(json);StdCost stdTemp = JSONObject.parseObject(json.toString(), StdCost.class);System.out.println(stdTemp.getStudentName() +" " + stdTemp.getStudentIdCard() +" " + stdTemp.getFeitype() +" " + stdTemp.getFei() +" " + df.format(stdTemp.getCreatedDate()));*///}//jsonArray = JSONArray.fromObject(list);//List<StdCost> listTemp = JSONArray.toList(jsonArray, StdCost.class);jsonArray = (JSONArray)JSONArray.toJSON(list);List<StdCost> listTemp = JSONArray.parseArray(jsonArray.toString(), StdCost.class);if(listTemp != null && listTemp.size() > 0){StdCost stdTemp = null;for(int i=0; i<listTemp.size(); i++){stdTemp = listTemp.get(i);System.out.println(stdTemp.getStudentName() +" " + stdTemp.getStudentIdCard() +" " + stdTemp.getFeitype() +" " + stdTemp.getFei() +" " + df.format(stdTemp.getCreatedDate()));}}
}

二、String转Json(Sting转JSONObject) 及 String转JsonArray(Sting转JSONArray)

1)普通net.sf.json.JSONObject

JSONObject json= JSONObject.fromObject(responseMsg);//JSONObject解析
JSONArray listJson = JSONArray.fromObject(responseMsg);//JSONArray解析 "[{},{},{}]"

完整示例:

//6.处理返回的内容
//JSONObject json= JSONObject.fromObject(responseMsg);//JSONObject解析
JSONArray listJson = JSONArray.fromObject(responseMsg);//JSONArray解析 "[{},{},{}]"
for(int i=0; i<listJson.size(); i++){JSONObject jsonObject = listJson.getJSONObject(i);String canteenName = jsonObject.getString("canteenName");String employeeName = jsonObject.getString("employeeName");System.out.println("canteenName:" + canteenName);System.out.println("employeeName:" + employeeName);
}

2)阿里云fastjson

//String转Json
JSONObject json = JSONObject.parseObject(token);//JSONObject解析
//String转JSONArray
JSONArray listJson = JSONArray.parseArray(value);//JSONArray解析 "[{},{},{}]"

  

三、json中带反斜杠\无法解析的问题

普通net.sf.json.JSONObject

import net.sf.json.JSONObject;String jsonStr = "{\"name\":\"zhangsan\",\"password\":\"123123\"}";
JSONObject json_test = JSONObject.fromObject(jsonStr);

解决json中带反斜杠\无法解析的问题(手工处理) 

//解决json中带反斜杠\无法解析的问题(手工处理)
jsonStr = jsonStr.substring(1, jsonStr.length() - 1);
jsonStr = jsonStr.replace("\\", "");
阿里云fastjson
String xmlStr = {"xmlStr":"<?xml version=\"1.0\" encoding=\"UTF-8\"?><APPROVEDATAINFO><SBLSH_SHORT>405051610052012121110300001</SBLSH_SHORT><SXBM>52012120140505161008008244</SXBM><XZQHDM>520100</XZQHDM><EXPRESSTYPE>3</EXPRESSTYPE></APPROVEDATAINFO>"};
JSONObject json = JSONObject.parseObject(xmlStr);
String xml = json.get("xmlStr").toString();
System.out.println(xml);

解决json中带反斜杠\无法解析的问题(阿里云fastjson) 

//解决json中带反斜杠\无法解析的问题(阿里云fastjson)
jsonStr = JSON.parse(jsonStr).toString();

 参考:问题关于json 字符串中带有反斜杠的问题_ベ远行ミ的博客-CSDN博客_json里面有反斜杠

Java JSON转Map 

//JSON转Map(JSONObject是Map接口的一个实现类)
Map json = (Map)JSONObject.parse(str);

 参考:Java JSON转换为map_Eric-x的博客-CSDN博客_java json转map


http://chatgpt.dhexx.cn/article/gpx0qQdS.shtml

相关文章

【Python】使用python实现yaml转json,json转yaml,以及批量实现yaml与json文件互相转换

文章目录 1. 安装yaml库2. yaml转json3. json转yaml4. 批量将yaml与json文件互相转换 1. 安装yaml库 想要使用python实现yaml与json格式互相转换&#xff0c;需要先下载pip&#xff0c;再通过pip安装yaml库。 如何下载以及使用pip&#xff0c;可参考我的另一篇博客&#xff1a…

转JSON数据的基本使用

目录 一、JSON概念 二、常用类型 三、基本使用 四、JsonIgnore&JsonIgnoreProperties() 五、 解决JSON日期格式化问题&#xff1a;JsonFormat 一、JSON概念 JSON&#xff08;JavaScript Object Notation, JS对象简谱&#xff09;是一种轻量级的数据交换格式。它基于 EC…

docker重启rabbitmq

1.输入docker ps -a 看看有哪些docker 镜像在运行2.先停止输入再进行删除3.然后我们发现已经没有了&#xff0c;再重新运行 docker run -d --name rabbitmq3.7.7 -p 5672:5672 -p 15672:15672 -v pwd/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOSTvho…

为什么我的 postgresql 重启 docker 后数据库就没了?

我们可以使用 docker 直接加载 postgresql 镜像来启动一个新的 postgresql 服务&#xff0c;但是这样做当重启 postgresql 的容器后&#xff0c;我们会发现数据库的内容就没了。 这个时候我们需要使用 docker volume 功能让 postgresql 把数据库放到主机 (host) 的文件夹下来保…

LINUX配置防火墙端口。并防火墙修改之后重启docker

一&#xff1a;linux配置防火墙 通过修改/etc/sysconfig/iptables文件的方式开启端口&#xff0c;如下 二&#xff1a;修改防火墙端口 然后在文件中增加一行。 三&#xff1a;重启防火墙&#xff0c;修改生效 service iptables restart 四&#xff1a;查看防火墙是否开启 ls…

为什么防火墙重启docker容器连接不上网络?

记录一次docker网络连接的问题&#xff1a; docker 容器化技术 linux 主机防火墙重启了之后为啥docker 就不能正常连接网络了&#xff0c;需要重启docker服务&#xff1b; 系统版本&#xff1a;redhat 7.5 docker版本:19.03.13 说起这个问题&#xff0c;就不得不说docker的网络…

Ubuntu18重启docker服务失败问题备忘

环境信息 操作系统&#xff1a;Ubuntu 18.04.2Docker&#xff1a;18.06.1-ce 现象 执行命令service restart docker&#xff0c;提示启动失败&#xff1a; roothedy:~# systemctl restart docker Failed to restart docker.service: Unit docker.service not found.原因 依…

重启docker容器命令

先查看docker容器 docker ps -a 然后用docker attach 命令进入启动的docker

Docker修改daemon.json配置,不需要重启docker或daemon-reload

dockerd reload 配置(不会重启 dockerd&#xff0c;直接修改配置) kill -SIGHUP $(pidof dockerd) # 给 dockerd 发送 SIGHUP 信号&#xff0c;dockerd 收到信号后会 reload 配置查看是否配置成功 docker info | grep -i 配置过滤关键字

不重启docker进程,重新reload加载配置

因为运行了多个容器&#xff0c;重启docker进程时会让所有容器重启&#xff0c;时间不能等&#xff1b;有没有类似nginx一样的reload机制呢&#xff1f; linux 信号认知&#xff1a;SIGHUP 本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知…

linux定时任务 定时重启docker容器

Linux添加crontab定时任务 由于公司古董项目&#xff0c;不知原因引发了&#xff0c;容器得每次重启才能正常使用。由于工作进度的原因没办法对老项目进行构架重构。就采取了这个定时任务的方式解决办法。 首先根据网页提供资料&#xff0c;crontab分为两类&#xff0c;系统c…

服务器关机后,重启docker容器

可以先查看被关闭的容器 使用命令 docker container ls -a 然后找到容器&#xff0c;输入 docker container start xxxx&#xff08;容器名称&#xff09; 就可以启动容器了 此外&#xff0c;设置开机自启 docker update --restartalways xxxx(容器名称)

docker启动,重启,关闭命令

启动 systemctl start docker 守护进程重启 sudo systemctl daemon-reload 重启docker服务 systemctl restart docker 重启docker服务 sudo service docker restart 关闭docker service docker stop 关闭docker systemctl stop dockerDocker容器的创建、启动、和停…

Git快速入门-常用命令之交响乐篇

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更&#xff0c;git reset 撤销commit&#xff0c;git revert 回退远程版本库 1.概述 Git入门系列第三篇&#xff0c;介绍…

开发linux常用指令操作

1. 开发linux常用指令操作 1.文档操作常用指令 命令功能描述ls列出目录cd切换目录pwd显示目前的目录mkdir创建一个新的目录rmdir删除一个空的目录cp复制文件或目录rm移除文件或目录mv移动文件与目录或修改文件与目录的名称 自动补全 在敲出 文件/ 目录 / 命令 的前几个字母…

Git使用教程总和

Git使用教程 【一】下载安装(Windows) 【1】获取Git安装程序 Git官网地址&#xff1a;https://git-scm.com/downloads 因为我们是用Windows系统上的浏览器访问的&#xff0c;Git官网自动之别到了我使用的操作系统&#xff0c;所以右侧直接显示下载使用Windows系统的最新版本(如…

一本面向入门者的Git书

一本面向开发者的Git书《Git学习指南》 如果你在某一团队中从事开发工作&#xff0c;希望了解如何才能有效地使用Git&#xff0c;那么这本书就是一个正确的选择。本书既不是那种偏重于理论的大部头&#xff0c;也不是一本面面俱到的参考书。我们并不打算解释所有的Git命令&…

Git基础操作

文章参考了廖雪峰的Git教程&#xff0c;自己进行了具体的操作学习&#xff0c;实例演示&#xff0c;加以记录学习。 目录 Git简介 Git与GitHub 安装Git 创建版本库 把文件添加到版本库 基本文件操作 修改 版本回退 工作区和暂存区 管理修改 撤销修改 删除文件 远程…

项目开发-工具-版本控制Git完整系统化使用说明

Git使用说明 前言1. 起步1.1 关于版本控制1.2 Git 简史1.3 Git 是什么&#xff1f;1.4 命令行1.5 安装 Git1.6 初次运行 Git 前的配置1.7 获取帮助1.8 总结 2. Git 基础2.1 获取 Git 仓库2.2 记录每次更新到仓库2.3 查看提交历史2.4 撤消操作2.5 远程仓库的使用2.6 打标签2.7 G…

三十分钟轻松玩转Git——学会Git就靠这一篇(ง •_•)ง

文章目录 Git入门教程Git简介&#x1f64b;‍♀️Git是什么&#xff1f;&#x1f64b;‍♀️GitHub与码云&#xff1f;&#x1f64b;‍♀️TortoiseGit是什么&#xff1f;&#x1f64b;‍♀️图形化客户端&#xff1f; 安装Git初始化Git&#x1f4cd;1.配置用户信息&#x1f4c…