AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
Java 25
Java 25
级别 46
JSON 基础:结构、语法与优势
JAVA 25 SELF
等级 46,
课时 0
对数据交换格式 JSON 的简明现代导论:它是什么,以及为什么它成为
REST API
的事实标准;基本结构——object
{ }
与array
[ ]
;可用类型(字符串
"..."
、数字、布尔value
true
/
false
、
null
)、嵌套、与 XML 的比较、JSON ↔ Java 的对应关系(集合
Map<K, V>
、
HashMap<K, V>
)。解析实践示例与常见错误:单引号、尾随逗号、
undefined
、带前导零的数字。
Jackson — 读取与写入 JSON,注解
JAVA 25 SELF
等级 46,
课时 1
Jackson 是在 Java 中处理 JSON 的事实标准:从通过
ObjectMapper
进行简单的序列化与反序列化,到使用注解
@JsonProperty
、
@JsonIgnore
、
@JsonInclude
、
@JsonFormat
进行精细配置。本讲将讲解依赖引入(
jackson-databind
)、对象与集合的读写、pretty-printing、日期处理以及常见错误,包括配合
TypeReference
的泛型与对 POJO 的要求(无参构造器、getter/setter)。
Gson — 序列化与反序列化,配置
JAVA 25 SELF
等级 46,
课时 2
本讲将讲解 Google 的
Gson
库:使用
toJson
/
fromJson
的快速上手,通过
TypeToken<>
反序列化集合,使用
GsonBuilder
(
setPrettyPrinting
、
serializeNulls
、
setDateFormat
)进行灵活配置。我们会讲解注解
@SerializedName
、
@Expose
,版本控制注解
@Since
/
@Until
,自定义适配器
TypeAdapter
与
registerTypeAdapter
的用法,最后与
Jackson
对比并分析常见错误。
处理动态数据结构:Map、List、JsonNode
JAVA 25 SELF
等级 46,
课时 3
当 JSON 结构事先未知或经常变化时,与其使用固定的 Java 类,不如使用通用容器:
Map
、
List
和 JSON 树。 本讲将讲解如何通过
ObjectMapper
将数据读取到
Map<String, Object>
和
List
中,如何通过
JsonNode
及其方法
get
/
path
/
asText()
安全遍历树,以及使用
Gson
的替代方案:
JsonElement
、
JsonObject
、
JsonArray
。最后以提取配置的实战和对常见错误的分析收尾。
JSON 验证:JSON Schema,与验证错误
JAVA 25 SELF
等级 46,
课时 4
在反序列化之前,为什么以及如何验证
JSON
格式的输入数据:通过
JSON Schema
约定数据契约(键
type
、
properties
、
required
、
format
),在 Java 中使用
everit-org/json-schema
库进行校验(将模式加载到
Schema
,调用
validate
),正确处理
ValidationException
,并为用户与 API 生成清晰的错误消息。
Please enable JavaScript to continue using this application.