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

超简洁网站/五年级下册数学优化设计答案

超简洁网站,五年级下册数学优化设计答案,自己做的网站打开空白,wordpress浮动客服代码在实际开发中,我们对于 JSON 数据的处理,通常有这么几个第三方工具包可以使用: gson:谷歌的fastjson:阿里巴巴的jackson:美国FasterXML公司的,Spring框架默认用的 由于以前一直用习惯了阿里的…

在实际开发中,我们对于 JSON 数据的处理,通常有这么几个第三方工具包可以使用:

  • gson:谷歌的
  • fastjson:阿里巴巴的
  • jackson:美国FasterXML公司的,Spring框架默认用的

由于以前一直用习惯了阿里的 fastjson,最近突然改为 jackson ,不是太习惯,所以手写一个工具类,应付一下工作中常用的一些方法。

1. 引入依赖包

在 pom.xml 文件中加入以下依赖

<!-- 引入jackson依赖包-->
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.14.2</version>
</dependency>

2. 编写 JsonUtil 工具类

package com.yuhuofei.utils;import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import lombok.extern.slf4j.Slf4j;import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;/*** @Description 由于习惯了用fastjson处理JSON数据,突然改成用jackson,有些不适应,所以打算用jackson封装出类似fastjson里的方法进行使用* @ClassName JsonUtil* @Author yuhuofei* @Date 2023/8/19 14:36* @Version 1.0*/
@Slf4j
public class JsonUtil {private static ObjectMapper objectMapper = new ObjectMapper();// 时间日期格式private static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss";//以静态代码块初始化static {//对象的所有字段全部列入序列化objectMapper.setSerializationInclusion(JsonInclude.Include.ALWAYS);//取消默认转换timestamps形式objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);//忽略空Bean转json的错误objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);//所有的日期格式都统一为以下的格式,即yyyy-MM-dd HH:mm:ssobjectMapper.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT));//忽略 在json字符串中存在,但在java对象中不存在对应属性的情况。防止错误objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);}/**===========================以下是从JSON中获取对象====================================*/public static <T> T parseObject(String jsonString, Class<T> object) {T t = null;try {t = objectMapper.readValue(jsonString, object);} catch (JsonProcessingException e) {log.error("JsonString转为自定义对象失败:{}", e.getMessage());}return t;}public static <T> T parseObject(File file, Class<T> object) {T t = null;try {t = objectMapper.readValue(file, object);} catch (IOException e) {log.error("从文件中读取json字符串转为自定义对象失败:{}", e.getMessage());}return t;}//将json数组字符串转为指定对象List列表或者Map集合public static <T> T parseJSONArray(String jsonArray, TypeReference<T> reference) {T t = null;try {t = objectMapper.readValue(jsonArray, reference);} catch (JsonProcessingException e) {log.error("JSONArray转为List列表或者Map集合失败:{}", e.getMessage());}return t;}/**=================================以下是将对象转为JSON=====================================*/public static String toJSONString(Object object) {String jsonString = null;try {jsonString = objectMapper.writeValueAsString(object);} catch (JsonProcessingException e) {log.error("Object转JSONString失败:{}", e.getMessage());}return jsonString;}public static byte[] toByteArray(Object object) {byte[] bytes = null;try {bytes = objectMapper.writeValueAsBytes(object);} catch (JsonProcessingException e) {log.error("Object转ByteArray失败:{}", e.getMessage());}return bytes;}public static void objectToFile(File file, Object object) {try {objectMapper.writeValue(file, object);} catch (JsonProcessingException e) {log.error("Object写入文件失败:{}", e.getMessage());} catch (IOException e) {e.printStackTrace();}}/**=============================以下是与JsonNode相关的=======================================*///JsonNode和JSONObject一样,都是JSON树形模型,只不过在jackson中,存在的是JsonNodepublic static JsonNode parseJSONObject(String jsonString) {JsonNode jsonNode = null;try {jsonNode = objectMapper.readTree(jsonString);} catch (JsonProcessingException e) {log.error("JSONString转为JsonNode失败:{}", e.getMessage());}return jsonNode;}public static JsonNode parseJSONObject(Object object) {JsonNode jsonNode = objectMapper.valueToTree(object);return jsonNode;}public static String toJSONString(JsonNode jsonNode) {String jsonString = null;try {jsonString = objectMapper.writeValueAsString(jsonNode);} catch (JsonProcessingException e) {log.error("JsonNode转JSONString失败:{}", e.getMessage());}return jsonString;}//JsonNode是一个抽象类,不能实例化,创建JSON树形模型,得用JsonNode的子类ObjectNode,用法和JSONObject大同小异public static ObjectNode newJSONObject() {return objectMapper.createObjectNode();}//创建JSON数组对象,就像JSONArray一样用public static ArrayNode newJSONArray() {return objectMapper.createArrayNode();}/**===========以下是从JsonNode对象中获取key值的方法,个人觉得有点多余,直接用JsonNode自带的取值方法会好点,出于纠结症,还是补充进来了*/public static String getString(JsonNode jsonObject, String key) {String s = jsonObject.get(key).asText();return s;}public static Integer getInteger(JsonNode jsonObject, String key) {Integer i = jsonObject.get(key).asInt();return i;}public static Boolean getBoolean(JsonNode jsonObject, String key) {Boolean bool = jsonObject.get(key).asBoolean();return bool;}public static JsonNode getJSONObject(JsonNode jsonObject, String key) {JsonNode json = jsonObject.get(key);return json;}
}

3. 测试

新建一个 User 类

package com.yuhuofei.entity;import lombok.Data;import java.io.Serializable;/*** @Description* @ClassName User* @Author yuhuofei* @Date 2023/8/19 14:49* @Version 1.0*/
@Data
public class User implements Serializable {private static final long serialVersionUID = 1L;private Integer id;private String name;private String passWord;
}

新建一个测试类

import com.yuhuofei.entity.User;
import com.yuhuofei.utils.JsonUtil;/*** @Description* @ClassName TestJsonUtil* @Author yuhuofei* @Date 2023/8/19 14:58* @Version 1.0*/
public class TestJsonUtil {public static void main(String[] args) {String jsonString = "{\"id\":11,\"name\":\"小明\",\"passWord\":\"123456\"}";User user = JsonUtil.parseObject(jsonString, User.class);System.out.println(user);}
}

执行 main 方法测试,可以看到在控制台正确地输出了结果。
在这里插入图片描述

相关文章:

利用Jackson封装常用的JsonUtil工具类

在实际开发中&#xff0c;我们对于 JSON 数据的处理&#xff0c;通常有这么几个第三方工具包可以使用&#xff1a; gson&#xff1a;谷歌的fastjson&#xff1a;阿里巴巴的jackson&#xff1a;美国FasterXML公司的&#xff0c;Spring框架默认用的 由于以前一直用习惯了阿里的…...

阿里云2核4G服务器配置汇总表_轻量和ECS

阿里云2核4G服务器配置价格表&#xff0c;297元一年&#xff0c;配置为轻量应用服务器2核4G、4M带宽、60GB高效云盘&#xff0c;折合24元一个月。 目录 2核4G服务器轻量&#xff1a; 2核4G服务器ECS 关于轻量和ECS的区别&#xff1a; 2核4G服务器轻量&#xff1a; 云服务器…...

攻防世界-ics-06

原题解题思路 看着页面多&#xff0c;其实只有报表中心能够跳转&#xff0c;但是选了确定后没反应&#xff0c;应该不是注入&#xff0c;只有id会变化。 在burp中设置好负载进行爆破 有一个长度与众不同的包 打开发现flag。...

人工智能轨道交通行业周刊-第56期(2023.8.14-8.20)

本期关键词&#xff1a;数字化建设、巡检机器人、智慧城轨、福州地铁4号线、避雷器、LangChain 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMet…...

ruoyi-vue-pro yudao 项目报表设计器 积木报表模块启用及相关SQL脚本

目前ruoyi-vue-pro 项目虽然开源&#xff0c;但是report模块被屏蔽了&#xff0c;查看文档却要收费 199元&#xff08;知识星球&#xff09;&#xff0c;价格有点太高了吧。 分享下如何启用 report 模块&#xff0c;顺便贴上sql相关脚本。 一、启用模块 修改根目录 pom.xml …...

【第三阶段】kotlin中使用带let的安全调用

let常常和&#xff1f;.配合使用&#xff0c;如果前面的对象为null,let不执行&#xff0c;能够执行到let里面 对象一定不为null 1.不为null fun main() {var name:String?"kotlin" //name是一个可空类型&#xff0c;发出广播&#xff0c;调用的地方必须补救措施var…...

JavaScript 快速入门手册

本篇文章学习&#xff1a; 菜鸟教程、尚硅谷。 JavaScript 快速入门手册 &#x1f4af; 前言&#xff1a; 本人目前算是一个Java程序员&#xff0c;但是目前环境… ε(ο&#xff40;*))) 一言难尽啊&#xff0c;blog也好久好久没有更新了&#xff0c;一部分工作原因吧(外包真…...

FreeMarker系列--list的用法(长度,遍历,下标,嵌套,排序)

原文网址&#xff1a;FreeMarker系列--list的用法&#xff08;长度,遍历,下标,嵌套,排序&#xff09;_IT利刃出鞘的博客-CSDN博客 简介 本文介绍FreeMarker的list的用法。 大小 Java ArrayList<String> list new ArrayList<String>(); Freemaker ${list?s…...

【观察】戴尔科技:构建企业创新“韧性”,开辟数实融合新格局

过去几年&#xff0c;国家高度重视发展数字经济&#xff0c;将其上升为国家战略。其中&#xff0c;“十四五”规划中&#xff0c;就明确提出要推动数字经济和实体经济的深度融合&#xff0c;以数字经济赋能传统产业转型升级&#xff1b;而2023年年初正式发布的《数字中国建设整…...

数据管理平台

数据管理平台项目 文章目录 数据管理平台项目业务1-登录验证代码步骤&#xff1a; token 技术token的使用代码步骤 axios 请求拦截器语法代码示例 axios响应拦截器优化axios响应结果发布文章-富文本编辑器发布文章-频道列表发布文章-封面设置发布文章-收集并保存内容管理-文章列…...

手搓大语言模型 使用jieba分词制作词表,词表大小几十万 加强依赖性

jieba分词词表生成与训练 import numpy as np import paddle import pandas as pd from multiprocessing import Process, Manager, freeze_support from just_mask_em import JustMaskEm, HeadLoss from tqdm import tqdm from glob import glob import jieba import warning…...

【校招VIP】java语言类和对象之map、set集合

考点介绍&#xff1a; map、set集合相关内容是校招面试的高频考点之一。 map和set是一种专门用来进行搜索的容器或者数据结构&#xff0c;其搜索效率与其具体的实例化子类有关系。 『java语言类和对象之map、set集合』相关题目及解析内容可点击文章末尾链接查看&#xff01; …...

windows服务器下java程序健康检测及假死崩溃后自动重启应用、开机自动启动

前两天由于项目需要&#xff0c;一个windows上的批处理任务&#xff08;kitchen.bat&#xff09;&#xff0c;需要接到mq的消息通知后执行&#xff0c;为了快速实现这里我们通过springboot写了一个jar程序&#xff0c;用于接收mq的消息&#xff0c;并调用bat文件。 本程序需要实…...

七夕特辑(一)浪漫表白方式 用神经网络生成一首情诗

目录 一、准备工作二、用神经网络生成一首诗&#xff0c;代码说明 牛郎织女相会&#xff0c;七夕祝福要送来。祝福天下有情人&#xff0c;终成眷属永相伴。 七夕是中国传统的情人节&#xff0c;也是恋人们表达爱意的好时机。在这个特别的日子里&#xff0c;送上温馨的祝福&…...

springboot的 spring.redis.lettuce的max-active、max-idle、min-idle的搭配

在Spring Boot中&#xff0c;使用Lettuce作为Redis客户端是一种常见的选择。Lettuce是一个高性能、可扩展的异步Redis客户端。下面是关于application.yml配置文件中spring.redis.lettuce的一些配置&#xff1a; spring:redis:host: localhostport: 6379database: 0lettuce:poo…...

盒子模型样式

&#x1f353;盒子属性 属性名称中文注释备注border设置盒子的边框边框宽度 边框类型 边框颜色border-left设置左边框边框宽度 边框类型 边框颜色border-right设置右边框边框宽度 边框类型 边框颜色border-top设置上边框边框宽度 边框类型 边框颜色border-bottom设置下边框边框…...

动态规划入门之线性动态规划

P1115 最大子段和 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目要求求连续得一段子串使其累加和最大。 我们做动态规划首先考虑小情况&#xff0c;然后推而广之。 假设三个数1&#xff0c;-2&#xff0c;5. 我们先选1然后我们在-2以及-2加1里边选&#xff0c;我们选…...

基于HTML+CSS+Echarts大屏数据可视化集合共99套

基于HTMLCSSEcharts大屏数据可视化集合共99套 一、介绍二、展示1.大数据展示系统2.物流订单系统3.物流信息系统4.办税渠道监控平台5.车辆综合管控平台 三、其他系统实现四、获取源码 一、介绍 基于HTML/CSS/Echarts的会议展览、业务监控、风险预警、数据分析展示等多种展示需求…...

Leetcode 0814周总结

本周刷题&#xff1a; 88, 108, 121, 219, 228, 268, 283, 303, 349, 350, 414, 448 88 合并两个有序数组 nums1{1, 2, 3 ,0, 0, 0} nums2{2, 5, 6} 合成效果&#xff1a;nums1{1, 2, 2, 3, 5, 6} 思路&#xff1a;【双指针】对两个数组设置双指针&#xff0c;依次比较哪…...

华为网络篇 OSPF的Silent-Interface-33

难度1复杂度1 目录 一、实验拓扑 二、实验步骤 三、实验过程 总结 一、实验拓扑 二、实验步骤 1.搭建如图所示的网络拓扑&#xff1b; 2.初始化各设备&#xff0c;配置相应的IP地址&#xff0c;测试直连网络的连通性&#xff1b; 3.整个网络配置OSPF协议&#xff0c;查看…...

longtext,bigint是什么数据类型

longtext 是一种数据类型&#xff0c;用于在关系型数据库中存储长文本或大段的文本数据。它通常用于存储超过普通文本长度限制的内容&#xff0c;比如文章、博客内容、HTML 代码等。 在多数关系型数据库中&#xff0c;longtext 是一种用于存储可变长度字符数据的类型&#xff…...

Hive无法启动的解决方案

关掉虚拟机后&#xff0c;重新启动后&#xff0c;按照Hadoop和Hive的流程重新启动&#xff0c;发现无法启动成功&#xff0c;特别是元数据服务无法启动&#xff0c;出现以下错误: Exception in thread “main” java.lang.RuntimeException: java.net.ConnectException: Call F…...

华为云零代码新手教学-体验通过Astro Zero快速搭建微信小程序

您将会学到 您将学会如何基于Astro零代码能力&#xff0c;DIY开发&#xff0c;完成问卷、投票、信息收集、流程处理等工作&#xff0c;还能够在线筛选、分析数据。实现一站式快速开发个性化应用&#xff0c;体验轻松拖拽开发的乐趣。 您需要什么 环境准备 注册华为云账号、实…...

【前端】快速掌握HTML+CSS核心知识点

文章目录 1.HTML核心基础知识1.1.编写第一个HTML网页1.2.超链接a标签和路径1.3.图像img标签的用法1.4.表格table标签用法1.5.列表ul、ol、dl标签用法1.6.表单form标签用法1.7.区块标签和行内标签用法 2.CSS核心基础知识2.1.CSS标签选择器viewport布局2.2.CSS样式的几种写法2.3.…...

二叉树算法的框架套路总结

二叉树算法的框架套路总结 总结 本文主要来源于Leetcode用户&#xff1a;https://leetcode.cn/u/labuladong/&#xff0c;感谢写了这么好的文章作者&#xff1a;labuladong 链接&#xff1a;https://leetcode.cn/problems/same-tree/solutions/6558/xie-shu-suan-fa-de-tao-l…...

【ARM 嵌入式 编译 Makefile 系列 2 - Makefile 如何打印信息】

文章目录 Makefile 打印信息方法介绍Makefile 打印信息方法介绍 在Makefile中,我们可以使用echo命令来打印信息。这种方法适用于大多数的 UNIX shell,包括bash、sh、ksh、zsh等。 在 Makefile 中的规则部分,你可以添加 echo 命令来打印一些信息。例如: all: echo "…...

re学习(34)攻防世界-csaw2013reversing2(修改汇编顺序)

参考文章&#xff1a; re学习笔记&#xff08;27&#xff09;攻防世界-re-csaw2013reversing2_Forgo7ten的博客-CSDN博客攻防世界逆向入门题之csaw2013reversing2_沐一 林的博客-CSDN博客 三种做法 1、ida静态分析修改指令 main函数反编译的代码 由于运行之后的是乱码&…...

centos 7.9 部署django项目

1、部署框架 主要组件&#xff1a;nginx、uwsgi、django项目 访问页面流程&#xff1a;nginx---》uwsgi---》django---》uwsgi---》nginx 2、部署过程 操作系统&#xff1a;centos 7.9 配置信息&#xff1a;4核4G 50G 内网 eip &#xff1a;10.241.103.216 部署过程&…...

12 正则表达式 | HTTP协议相关介绍

文章目录 正则表达式re模块最基础操作&#xff08;匹配开头&#xff09;匹配单个字符匹配多个字符匹配开头结尾匹配分组对于group的理解r的作用re 模块高级用法compilesearchfindall易错点 sub直接替换函数替换 split 根据匹配进行切割字符串&#xff0c;并返回一个列表 python…...

【C语言】数组概述

&#x1f6a9;纸上得来终觉浅&#xff0c; 绝知此事要躬行。 &#x1f31f;主页&#xff1a;June-Frost &#x1f680;专栏&#xff1a;C语言 &#x1f525;该篇将带你了解 一维数组&#xff0c;二维数组等相关知识。 目录&#xff1a; &#x1f4d8;前言&#xff1a;&#x1f…...