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

Jackson与Json、Json和各种Java数据类型的互相转化

jackson是什么

json是最常用的数据交换格式

Jackson是最流行的Json库

首先对于这种JSON序列化的库其实有非常多,比如我们熟悉的Gson,Fastjson等等,当然技术没有完全的好坏,但是从使用情况和社区生态等方面综合看来,Jackson无疑是更胜一筹;

Jsckson的使用方法:

如果是SpringBoot项目的话,引入了Spring-boot-starter-web依赖,会自动引入Jsckson的全部依赖。

如果项目的依赖没有引入,则可以通过添加Jackson依赖来手动引入



  • Jackson:开源免费的 JSON 转换工具,SpringMVC 转换默认使用 Jackson。

  • 可以将 JAVA 对象或集合转换成 JSON 格式的字符串,也可以将 JSON 格式的字符串转成 JAVA 对象。

  • 常用类

Json和各种Java数据类型的互相转化

map+嵌套对象

数组+嵌套对象

总结:

ObjectMapper mapper = new ObjectMapper();

(1)Java类型转json类型,调用mapper.writeValueAsString(),传入实参即可

(2)json类型转Java类型,调用mapper.readeValue(),第一个参数是json,第二个参数是用于接收json数据的对应的java对象类。

        如果json中没有嵌套,就用简单的 类名.Class 即可

        如果json中有嵌套,使用  new TypeReference<>(){}   作为第二个参数



redis中获得缓存json和解析json数据

相关文章:

  • Windows 下后台启动java项目的 jar 包
  • 大模型LLM面试常见算法题-包括Attention和Transformer常见面试题
  • Linux系统部署MongoDB开源文档型数据库并实现无公网IP远程访问
  • [Redis]哨兵机制
  • 【C++】哈希表 ---开散列版本的实现
  • Android TextView的属性与用法
  • 初阶数据结构二叉树练习系列(1)
  • 文件操作及部分文件函数的介绍学习(上)
  • 每天一个数据分析题(三百九十九)- 逻辑回归
  • servlet职称评审系统-计算机毕业设计源码00122
  • 精通SQL Server端口管理:添加与删除监听端口的指南
  • Pycharm的终端(Terminal)中切换到当前项目所在的虚拟环境
  • 入门PHP就来我这(纯干货)08
  • 【工具分享】SQLmap
  • 【pytorch12】什么是梯度
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • #Java异常处理
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 07.Android之多媒体问题
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • js递归,无限分级树形折叠菜单
  • MQ框架的比较
  • node和express搭建代理服务器(源码)
  • node学习系列之简单文件上传
  • Python进阶细节
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • vue--为什么data属性必须是一个函数
  • Vue小说阅读器(仿追书神器)
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 理清楚Vue的结构
  • 判断客户端类型,Android,iOS,PC
  • 驱动程序原理
  • 让你的分享飞起来——极光推出社会化分享组件
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • Nginx实现动静分离
  • PostgreSQL之连接数修改
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • #include到底该写在哪
  • (09)Hive——CTE 公共表达式
  • (C++20) consteval立即函数
  • (LeetCode) T14. Longest Common Prefix
  • (创新)基于VMD-CNN-BiLSTM的电力负荷预测—代码+数据
  • (二)c52学习之旅-简单了解单片机
  • (二)fiber的基本认识
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (排序详解之 堆排序)
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转载)Linux 多线程条件变量同步
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...