当前位置: 首页 > news >正文

JAVA操作Json的ObjectMapper类

JAVA操作Json的ObjectMapper类

  • 市面上用于在 Java 中解析 Json 的第三方库,随便一搜不下几十种,其中的佼佼者有 Google 的 Gson以及本文的 jackson。

  • 三者不相伯仲,随着掌握一个都能满足项目中的 json 解析操作,因为 Spring Boot Web 组件默认使用的是 jackson,所以掌握 Jackjson 是非常有必要的。

  • package com.zving;import org.codehaus.jackson.map.ObjectMapper;/*** 学习ObjectMapper类* * @author Clover*/
    public class JacksonTester {public static void main(String[] args) {ObjectMapper mapper = new ObjectMapper();//指定遇到date按照这种格式转换        SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        mapper.setDateFormat(fmt);String jsonString = "";stringToStudent(mapper, jsonString);studentToString(mapper, jsonString);stringToStudentList(mapper, jsonString);}/*** 字符串转实体类* * @param mapper* @param jsonString*/public static void stringToStudent(ObjectMapper mapper, String jsonString) {jsonString = "{\"id\":1001,\"name\":\"Tom\",\"info\":\"一个小男孩\"}";try {Student student = mapper.readValue(jsonString, Student.class);System.out.println(student);} catch (Exception e) {e.printStackTrace();}}/*** 实体类转字符串* * @param mapper* @param jsonString*/public static void studentToString(ObjectMapper mapper, String jsonString) {Student student = new Student();student.setId(1002);student.setName("李四");student.setInfo("一个小女孩");try {jsonString = mapper.writeValueAsString(student);System.out.println(jsonString);} catch (Exception e) {e.printStackTrace();}}/*** 字符串转 List<实体类>* * @param mapper* @param jsonString*/public static void stringToStudentList(ObjectMapper mapper, String jsonString) {jsonString = "[{\"id\":1001,\"name\":\"Tom\",\"info\":\"一个小男孩\"},{\"id\":1002,\"name\":\"Jane\",\"info\":\"一个小女孩\"}]";try {Student[] stu = mapper.readValue(jsonString, Student[].class);for (Student student : stu) {System.out.println(student);}String ss = mapper.writeValueAsString(stu);System.out.println(ss);} catch (Exception e) {e.printStackTrace();}}}
    

相关文章:

JAVA操作Json的ObjectMapper类

JAVA操作Json的ObjectMapper类 市面上用于在 Java 中解析 Json 的第三方库&#xff0c;随便一搜不下几十种&#xff0c;其中的佼佼者有 Google 的 Gson以及本文的 jackson。 三者不相伯仲&#xff0c;随着掌握一个都能满足项目中的 json 解析操作&#xff0c;因为 Spring Boot…...

Docker--harbor

一&#xff0c;registry registry是私有仓库的核心&#xff0c;只有字符终端。 二&#xff0c;registry部署 #首先下载 registry 镜像 docker pull registry#在 daemon.json 文件中添加私有镜像仓库地址 vim /etc/docker/daemon.json {"insecure-registries": [&q…...

Flink中的时间和窗口

1.Flink的时间和窗口 在传统的批处理系统中&#xff0c;我们可以等到一批数据全部都到齐了之后&#xff0c;对其做相关的计算&#xff1b;但是在实时处理系统中&#xff0c;数据是源源不断的&#xff0c;正常情况下&#xff0c;我们就得来一条处理一条。那么&#xff0c;我们应…...

Ultra-Fast-Lane-Detection 车道线学习资料整理

目录 官方版本 两个优化 数据标注,降低参数量 1 数据标注 2降低参数量...

【Ubuntu】Ubuntu18.04终端卡顿问题

博主您好&#xff0c;我也遇到了类似的问题&#xff0c;但我找到了问题的原因&#xff1a; 在gnome-terminal中&#xff0c;按tab补全是默认开启了“咚咚咚”音效的&#xff0c;在gnome-terminal里把音效关掉就好了&#xff0c;主要是因为按tab时&#xff0c;NVIDIA的视频信号和…...

k8s强制删除pod、svc、namespace(Terminating)

如果名称空间、pod、pv、pvc全部处于“Terminating”状态时&#xff0c;此时的该名称空间下的所有控制器都已经被删除了&#xff0c;之所以出现pod、pvc、pv、ns无法删除&#xff0c;那是因为kubelet 阻塞&#xff0c;有其他的资源在使用该namespace&#xff0c;比如CRD等&…...

froeach迭代删除和List迭代删除问题

场景:我有一个 List<ISSLogMessage> records 数据,需要从里面删除指定内容数据 第一次写成 foreach(var item in records) {if (item.logMessage.Contains("上传通行记录"))records.Remove(item); } 直接报错,因为foreach 是个迭代器 直接移除它的对象会报…...

chromedriver下载地址

ChromeDriver下载地址&#xff1a; 淘宝镜像&#xff1a;https://registry.npmmirror.com/binary.html?pathchromedriver/ 官方镜像&#xff1a;https://sites.google.com/a/chromium.org/chromedriver/downloads在下载页面上&#xff0c;将看到一列Chrome浏览器的版本号和相…...

2ED2410-EM:12v / 24v智能模拟高侧MOSFET栅极驱动器

概述 12v / 24v智能模拟高侧MOSFET栅极驱动器。 特性 PRO-SIL ISO 26262-准备根据ISO 26262:2018条款8-13支持硬件元件评估的集成商。一个通道器件具有两个高侧栅极驱动器输出。3 Ω下拉,50 Ω上拉,用于快速开关开/关。支持背靠背MOSFET拓扑(共漏极和共源)。两个双向高侧模拟…...

什么是Fetch API?与传统的AJAX相比,有什么优势?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…...

43.241.18.123哪些问题会导致服务器里面时间错误

我们在使用服务器的过程中&#xff0c;有时候可能会发现&#xff0c;服务器里面时间跟标准的时间对不上&#xff0c;那服务器里面时间错误可能由哪些问题引起&#xff1a; 硬件问题&#xff1a;服务器硬件中的时钟或电池可能损坏或失效&#xff0c;导致时间不准确或重置为默认…...

【ElasticSearch】更新es索引生命周期策略,策略何时对索引生效

大家好&#xff0c;我是好学的小师弟&#xff0c;今天和大家讨论下更新es索引生命周期策略后&#xff0c;策略何时对索引生效 结论: 若当前索引已应用策略A(旧)&#xff0c;更新完策略A后&#xff0c;新的策略A会立即对原来的已经应用该策略的索引生效&#xff1b;若当前索引…...

卫星/RedCap/高算力/解决方案/创新金奖……移远通信为IOTE 2023再添新活力

9月20日&#xff0c;IOTE 2023第二十届国际物联网展深圳场震撼来袭。 作为IOTE多年的“老朋友”&#xff0c;移远通信在参展当天&#xff0c;不仅有5G RedCap、卫星通信、高算力、车载等高性能产品及终端展出&#xff0c;还携智慧出行、智慧生活、智慧能源、工业互联网等多领域…...

N9030B是德科技信号分析仪

181/2461/8938它能够实现对复杂信号的实时捕获、分析和处理。Keysight N9030B采用了最先进的技术和设计&#xff0c;为工程师和科学家们提供了一系列强大的功能&#xff0c;帮助他们更好地进行信号分析&#xff0c;以满足不断变化的应用需求。 Keysight N9030B采用了全新的硬件…...

Mysql索引原理

文章目录 一、Mysql索引原理1.1 mysql记录存储结构1.2 主键索引1.3 普通索引1.4 联合索引 一、Mysql索引原理 1.1 mysql记录存储结构 mysql默认使用innodb存储引擎存储数据。以页为最小单位存取数据&#xff0c;页的大小为16KB往mysql表中插入记录时&#xff1a;一个页中存放…...

apifox的使用以及和idea集成

apifox 简介 Apifox 是 API 文档、API 调试、API Mock、API 自动化测试一体化协作平台&#xff0c;定位 Postman Swagger Mock JMeter&#xff0c;由此可见apifox集功能于一身&#xff0c;极大的提升了我们开发的效率&#xff0c;不用再为postman网络连接失败而发愁&…...

css:过渡transition 、转换transform、动画animation

一、过渡效果&#xff1a;transition 属性 transition 属性是CSS3中用来实现元素过渡效果的属性之一。它定义了元素在不同状态之间平滑过渡的效果&#xff0c;让元素的改变更加流畅和动态。 transition 属性包括以下几个子属性&#xff1a; transition-property&#xff1a;指…...

双边滤波算法及例程

双边滤波算法是一种非线性滤波技术&#xff0c;用于平滑图像并保留边缘细节。它在计算像素的平均值时考虑了两个因素&#xff1a;1&#xff09;空间域的距离和2&#xff09;灰度值之间的差异。 算法步骤如下&#xff1a; 定义一个窗口&#xff0c;包含待处理像素及其周围邻域…...

排序算法-希尔排序法(ShellSort)

排序算法-希尔排序法&#xff08;ShellSort&#xff09; 1、说明 我们知道当原始记录的键值大部分已排好序的情况下插入排序法非常有效&#xff0c;因为它不需要执行太多的数据搬移操作。希尔排序法是D.L.Shell在1959年7月发明的一种排序法&#xff0c;可以减少插入排序法中数…...

交通物流模型 | 基于自适应图卷积网络的轨道交通短时客流预测

随着城市化进程的发展和加快,城市轨道交通系统逐渐成长为一个大型网络,站点间的拓扑结构也变得越来越复杂,使得空间依赖性的捕捉变得越来越困难。多条线路的纵横交错使得站点间呈拓扑分布,传统的图卷积网络是基于先验知识生成的邻接矩阵实现的,无法反映站点之间的实际空间…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制&#xff1a; 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程&#xff0c;创建出来的进程就是子进程&#xff0c;原来的进程为父进程。…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕&#xff0c;#AI 监考一度冲上热搜。当AI深度融入高考&#xff0c;#时间同步 不再是辅助功能&#xff0c;而是决定AI监考系统成败的“生命线”。 AI亮相2025高考&#xff0c;40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕&#xff0c;江西、…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...