当前位置: 首页 > 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;可以减少插入排序法中数…...

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

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

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说&#xff0c;传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度&#xff0c;通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

AI编程--插件对比分析:CodeRider、GitHub Copilot及其他

AI编程插件对比分析&#xff1a;CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展&#xff0c;AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者&#xff0c;分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...