JSON学习(二)—— 简单实战篇(使用Jackson实现Java对象、数组与JSON的互相转换)

本文是关于使用Jackson库实现Java对象、数组与JSON之间转换的实战教程。介绍了Jackson的基本概念,包括流式API、树模型和数据绑定,并通过一个Student实体类的示例详细解释了转换过程,包括Java对象转JSON、JSON转Java对象、数组转JSON以及JSON转数组的操作。同时,还讨论了如何处理null值和空对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

之前简单的了解了一下JSON的一些类似JSON是个啥,为什么要有JSON,JSON与XML的区别,JSON的语法规则等基础概念(可跳转学习笔记:https://blog.csdn.net/qq_38586378/article/details/102989550),想着后端尤其在Java Web项目中的话应该是要学会Java与JSON的相互转换的,恰好之前毕设的时候又遇到过这个技术点,就是Jackson,就简单的做了个小demo进行记录。

二、参考链接

三、知识点及技术的简单介绍

3.1 JSON

JSON,JavaScript Object Notation,一种轻量级数据转换格式;本身就是一个字符;不受编程语言限制,支持与多种类型数据进行转换;表示方法是名称 : 值,其中名称为字符串,值可为整数、浮点数、字符串、布尔值、数组、对象和null,其中数组数据在 [] 中,对象数据在 {} 中;数据间使用 , 隔开;JSON相对于XML,数据结构更简洁,更适合于面向对象的通过RESTful API通信的应用程序开发。

3.2 Jackson

Jackson是一个简单的基于Java的应用库,可轻松完成Java对象与JSON、XML的相互转换;依赖jar包少,性能高;社区活跃,更新快。

一般处理JSON有三种方式:

  • 流式API——读取JSON并将JSON写入作为离散事件,主要涉及JsonParser和JsonGenerator方法,前者读取数据,后者写入数据。是最有效、最低开销、最快的读/写操作
  • 树模型——准备JSON文件并以树的形式保存在内存中,主要涉及JsonNode节点,readTree方法读取树
  • 数据绑定——转换JSON,主要分为简单的数据绑定和全部数据绑定。前者是转换JSON和Java的Map、List、String、整数、布尔值和null对象;后者是指将JSON转为任何的Java对象。使用ObjectMapper的writeValueAsString将Java对象转JSON,readValue方法将JSON转为Java对象

Jackson涉及三个核心模块:

  • jackson-core:定义低级的流式API,包括JSON处理细节
  • jackson-annotation:包括Jackson注解
  • jackson-databind:实现Java对象与JSON的相互转换

一般使用方法,以Spring Boot为例,直接在pom.xml配置文件中加以jackson-databind依赖即可(最好是把Jackson的三个核心模块都给加上,有一些异常处理可能需要import一下)。

四、实现过程

4.1 Java实体类创建

设计一个Student对象,对象属性有ID、Name、Sex、Class班级、Address、Parents

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值