[AIGC] Java常用的JSON库及简单示例
Java常用的JSON库及简单示例
在Java的世界里,JSON库广泛用于日常开发工作,本文将介绍几个常用的JSON库并配以简单的示例代码。
1. Gson

Gson是Google提供的一个用来在Java对象和JSON数据之间进行转换的Java库。 它有一定的学习曲线,但一旦熟悉,Gson便会变得非常易用。
示例代码
import com.google.gson.Gson;public class Main {public static void main(String[] args) {Gson gson = new Gson();// SerializationString jsonString = gson.toJson(1); // ==> 1System.out.println(jsonString);// Deserializationint one = gson.fromJson("1", int.class);System.out.println(one);}
}
2. Jackson

Jackson是一个可以用来转换Java对象的库,到JSON字符串,或将JSON字符串解析到Java对象。 这是最常用的库之一。
示例代码
import com.fasterxml.jackson.databind.ObjectMapper;public class Main {public static void main(String[] args) throws Exception{ObjectMapper mapper = new ObjectMapper();// SerializationString jsonString = mapper.writeValueAsString(1);System.out.println(jsonString);// Deserializationint one = mapper.readValue("1", int.class);System.out.println(one);}
}
3. JSON.simple

JSON.simple 是一个简单,轻量级的库,用来解析和生成JSON。 它易于使用并且小巧,适用于不需要许多高级特性的项目。
示例代码
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;public class Main {public static void main(String[] args) throws Exception{JSONObject obj = new JSONObject();obj.put("1", "One");// SerializationString jsonString = obj.toJSONString();System.out.println(jsonString);// DeserializationJSONParser parser = new JSONParser();Object one = ((JSONObject)parser.parse(jsonString)).get("1");System.out.println(one);}
}
每种主流的Java JSON库都有其特点,你可以根据项目需求和个人喜好选择适合的JSON库来使用。以上只是展示了如何将整型数字1序列化为JSON字符串以及反序列化的过程,更深入的使用方法,需要阅读相关文档或查看源代码来学习。
希望这篇文章对你有所帮助!让我们一起享受编程的乐趣吧!
相关文章:
[AIGC] Java常用的JSON库及简单示例
Java常用的JSON库及简单示例 在Java的世界里,JSON库广泛用于日常开发工作,本文将介绍几个常用的JSON库并配以简单的示例代码。 1. Gson Gson是Google提供的一个用来在Java对象和JSON数据之间进行转换的Java库。 它有一定的学习曲线,但一旦熟…...
Linux shell编程学习笔记50:who命令
0 前言 2024年的网络安全检查又开始了,对于使用基于Linux的国产电脑,我们可以编写一个脚本来收集系统的有关信息。比如,我们可以使用who命令来收集当前已登陆系统的用户信息,当前运行级别等信息。 1. who命令 的功能、格式和选项…...
vue使用webscoket
1. 创建 WebSocket 连接 首先,你需要在你的 Vue 组件中创建一个 WebSocket 连接。通常,这会在组件的 created 或 mounted 生命周期钩子中完成。 created() {this.socket new WebSocket(wss://your-websocket-url);this.socket.onopen () > {conso…...
第18章-综合以上功能 基于stm32的智能小车(远程控制、避障、循迹) 基于stm32f103c8t6/HAL库/CubeMX/超详细,包含代码讲解和原理图
这个是全网最详细的STM32项目教学视频。 第一篇在这里: 视频在这里 STM32智能小车V3-STM32入门教程-openmv与STM32循迹小车-stm32f103c8t6-电赛 嵌入式学习 PID控制算法 编码器电机 跟随 第18章-综合以上功能 18-按键和app按钮切换功能 根据上面介绍,我们的模式可…...
java并发工具类都有哪些
Java中的并发工具类包括: CountDownLatch CountDownLatch允许一个或多个线程等待其他线程完成某些操作。它通常用于线程间的同步,例如在一个线程完成其工作后通知其他线程继续执行。 CyclicBarrier CyclicBarrier是一个同步辅助类,它允许一…...
偏微分方程算法之抛物型方程差分格式编程示例一
目录 一、研究问题 二、C++代码 三、结果分析 一、研究问题 从本节开始将对具体的抛物型偏微分问题算例进行C++编程,以加深对抛物型偏微分方程差分格式构造的理解和应用。 采用向前欧拉格式计算抛物型方程初边值问题:...
数据结构—栈(C语言实现)
文章目录 前言一、栈的概念二、栈的代码实现Stack.hStack.c 三、使用栈解决有效的括号问题总结 前言 小伙伴们,大家好哇!!欢迎来到我的博客! 今天来分享一下另外一种数据结构—栈。主要包括栈的基本概念与其代码实现,…...
JVM学习-垃圾回收器(一)
垃圾回收器 按线程数分类 串行垃圾回收器 串行回收是在同一时间段内只允许有一个CPU用于执行垃圾回收操作,此时工作线程被暂停,直至垃圾收集工作结束 在诸如单CPU处理器或者较小的应用内存等硬件平台不是特别优越的场合,串行回收器的性能表…...
dolphinscheduler standalone安装
官方文档:https://dolphinscheduler.apache.org/en-us/docs/3.1.3/guide/installation/standalone 1.安装(以放在/home为例) 下载见:https://download.csdn.net/download/taotao_guiwang/89311365 tar -xvzf apache-dolphinsche…...
力扣hot 100:49. 字母异位词分组(python C++)
目录 题目描述:题解(python):(方法一:排序)代码解析代码运行解析 题解(C):(方法一:排序)代码解析&运行解析 原题目链接…...
男士内裤什么材质的好?推荐男士内裤的注意事项
天气已经逐渐热了起来,广大男士们在夏天难免会出一身的汗,不少男士朋友都觉得一些吸湿性、透气性不好的内裤会在夏天穿着很不适,想挑选一些比较适合夏天的男士内裤,但现在的男士内裤品牌和材质分类却比较多,看得大家眼…...
Python操作MySQL数据库的工具--sqlalchemy
文章目录 一、pymysql和sqlalchemy的区别二、sqlalchemy的详细使用1.安装库2.核心思想3.整体思路4.sqlalchemy需要连接数据库5.使用步骤1.手动提前创建数据库2.使用代码创建数据表3.用代码操作数据表3.1 增加数据3.2 查询数据3.3 删除数据3.4 修改数据 一、pymysql和sqlalchemy…...
【算法】排序
排序算法在信息学非常常用。Hello!大家好,我是学霸小羊,今天讲几个排序算法。 1.“打擂台”排序 思路:a[ i ]和a[ j ]打擂台(i<j)。 这个方法简单易懂,只需要看看需不需要交换。按从大到小…...
前端开发之xlsx的使用和实例,并导出多个sheet
前端开发之xlsx的使用和实例 前言效果图1、安装2、在页面中引用3、封装工具类(excel.js)4、在vue中使用 前言 在实现业务功能中导出是必不可少的功能,接下来为大家演示在导出xlsx的时候的操作 效果图 1、安装 npm install xlsx -S npm inst…...
创建数据库数据插入、更新与删除
创建数据库和创建表 一、实验目的 (1)熟悉和掌握数据库的创建和连接方法; (2)熟悉和掌握数据库表的建立、修改和删除; (3)加深对表的实体完整性、参照完整性和用户自定义完整性的…...
【CTF Web】CTFShow web3 Writeup(SQL注入+PHP+UNION注入)
web3 1 管理员被狠狠的教育了,所以决定好好修复一番。这次没问题了。 解法 注意到: <!-- flag in id 1000 -->但是拦截很多种字符。 if(preg_match("/or|\-|\\|\*|\<|\>|\!|x|hex|\/i",$id)){die("id error"); }使用…...
常见API(JDK7时间、JDK8时间、包装类、综合练习)
一、JDK7时间——Date 1、事件相关知识点 2、Date时间类 Data类是一个JDK写好的Javabean类,用来描述时间,精确到毫秒。 利用空参构造创建的对象,默认表示系统当前时间。 利用有参构造创建的对象,表示指定的时间。 练习——时间计…...
Docker数据卷(volume)
数据卷 数据卷是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。(容器内目录与宿主机目录对应的桥梁,修改宿主机对应的目录,docker会映射到容器内部,相当于修改了容器内的,反之也一样)数…...
30.哀家要长脑子了!---栈与队列
1.388. 文件的最长绝对路径 - 力扣(LeetCode) 其实看懂了就还好 用一个栈来保存所遍历过最大的文件的绝对路径的长度,栈顶元素是文件的长度,栈中元素的个数是该文件目录的深度,非栈顶元素就是当时目录的长度 检查此…...
多重继承引起的二义性问题和虚基类
多重继承容易引起的问题就是因为继承的成员同名而产生的二义性问题。 例:类A和类B中都有成员函数display和数据成员a,类C是类A和类B的直接派生类 情况一: class A {public:int a;void display(); }; class B {public:int a;void display; }; class C:…...
03 AI编程工具基础配置:一键上手,零基础也能快速启用
AI编程工具基础配置:一键上手,零基础也能快速启用 摘要 本文为《30天掌控AI编程:从指令到落地,手把手教你指挥AI写代码》系列第三篇,聚焦上一篇推荐的3款主流AI编程工具(GitHub Copilot、文心快码、CodeLlama)的基础配置流程,以通用、简洁的实操步骤展开,全程无复杂…...
PHP中HTML标签过滤的5种有效方法
什么是XSS攻击? XSS(Cross-Site Scripting)攻击是指攻击者在网页中插入恶意脚本,当其他用户浏览该页面时,恶意脚本会被执行,从而盗取用户信息、会话令牌或进行其他恶意操作。 方法一:htmlspeci…...
C语言开发界面太难?libui-ng开源库帮你快速搞定
一、C语言开发者的噩梦,终被一个开源库打破? 搞C语言开发的那些人,基本上都躲不开这么一个让人头疼的点,就是想要去写一个可视化的界面,要嘛就得被迫去学习繁杂的Qt、GTK,不然呢就得拼了命去写Win32代码&a…...
jEasyUI 自定义对话框
jEasyUI 自定义对话框 引言 jEasyUI是一款流行的前端框架,它提供了一套完整的UI组件,旨在帮助开发者快速构建富客户端应用程序。在jEasyUI中,对话框是一个非常重要的组件,它可以用于显示信息、收集用户输入或执行其他交互任务。本文将详细介绍如何使用jEasyUI自定义对话框…...
SpringBoot 数据库连接池配置(HikariCP)最佳实践
在 SpringBoot 里,数据库连接池早就不是可选项,从 2.x 版本开始,SpringBoot 已经把 HikariCP 设为默认连接池,它以“极快、轻量、稳定”著称,也是目前线上最主流的选择。本篇文章就来讲讲HikarcCP的配置参数、调优思路…...
OpenClaw+Phi-3-mini-128k-instruct:中文长文本处理专项优化
OpenClawPhi-3-mini-128k-instruct:中文长文本处理专项优化 1. 为什么需要中文长文本专项优化? 在日常工作中,我经常需要处理各种中文长文本材料——从几十页的商业合同到上百页的学术论文。这些文档不仅篇幅长,还包含大量专业术…...
政府科技管理部门如何优化区域科技创新治理?
观点作者:科易网-国家科技成果转化(厦门)示范基地 摘要 在数智时代背景下,区域科技创新治理的复杂性显著提升,传统治理模式面临资源分散、服务碎片化、匹配效率低等核心痛点。政府科技管理部门亟需借助“数智产品共享…...
解锁论文写作新境界:书匠策AI——学术探索的智能导航灯
在学术的浩瀚海洋中,每一位研究者、学生乃至教育博主,都如同勇敢的航海家,驾驶着知识的船只,追寻着真理的彼岸。然而,论文写作这一航程中的关键环节,往往让许多人感到迷茫与挑战重重。今天,就让…...
【软件部署】在docker环境部署vsftpd
说明 vsftp官网https://security.appspot.com/vsftpd.html 配置文件说明https://security.appspot.com/vsftpd/vsftpd_conf.html 注意 因优化更新,文件内容可能变化,具体参考 https://github.com/zhuyifeiRuichuang/work-script/tree/main/vsftp 适用场景…...
水箱水位监测控制电路 Multisim 仿真探索
Multisim仿真文件 水箱水位监测控制电路报告 包含:说明书,Multisim10电路源文件,仿真电路等 仿真效果: 1.在水箱内的不同高度安装3根金属棒,以感知水位变化情况, 液位分1,2,3档&…...
