Package | Description |
---|---|
org.dromara.hutool.json |
JSON(JavaScript Object Notation JavaScript对象表示法)封装
规范见:https://www.rfc-editor.org/rfc/rfc8259 包含以下组件: JSONObject: 使用键值对表示的数据类型,使用"{}"包围 JSONArray: 使用列表表示的数据类型,使用"[]"包围 JSONPrimitive:表示boolean、String、Number等原始类型 JSON封装主要包括JSON表示和JSON转换:
<-----JSONMapper----- <---JSONParser----
Java对象 <====================> JSON对象 <=================> JSON字符串
-----JSONMapper-----> ---JSONWriter---->
当然,为了高效转换,如果没有自定义需求,Java对象可以不通过JSON对象与JSON字符串转换:
JSONTokener:JSON字符串底层解析器,通过Stream方式读取JSON字符串并对不同字段自定义处理。 |
org.dromara.hutool.json.writer |
JSON对象自定义转JSON字符串实现
|
Modifier and Type | Method and Description |
---|---|
JSONWriter |
JSONFactory.ofWriter(Appendable appendable)
创建
JSONWriter ,用于JSON写出 |
JSONWriter |
JSONFactory.ofWriter(Appendable appendable,
boolean prettyPrint)
创建
JSONWriter ,用于JSON写出 |
JSONWriter |
JSONFactory.ofWriter(Appendable appendable,
int indentFactor)
创建
JSONWriter ,用于JSON写出 |
Modifier and Type | Method and Description |
---|---|
void |
JSONPrimitive.write(JSONWriter writer) |
void |
JSONObject.write(JSONWriter writer) |
void |
JSONArray.write(JSONWriter writer) |
void |
JSON.write(JSONWriter writer)
将JSON内容写入Writer
Warning: This method assumes that the data structure is acyclical. |
Modifier and Type | Method and Description |
---|---|
JSONWriter |
JSONWriter.append(char c) |
JSONWriter |
JSONWriter.append(CharSequence csq) |
JSONWriter |
JSONWriter.append(CharSequence csq,
int start,
int end) |
JSONWriter |
JSONWriter.beginArray()
JSONArray写出开始,默认写出"["
|
JSONWriter |
JSONWriter.beginObj()
JSONObject写出开始,默认写出"{"
|
JSONWriter |
JSONWriter.endArray()
结束JSON数组,默认根据开始的类型,补充"]"
|
JSONWriter |
JSONWriter.endObj()
结束JSON对象,默认根据开始的类型,补充"}"
|
static JSONWriter |
JSONWriter.of(Appendable appendable,
int indentFactor,
int level,
JSONConfig config,
Predicate<MutableEntry<Object,Object>> predicate)
创建JSONWriter
|
static JSONWriter |
JSONWriter.of(Appendable appendable,
int indentFactor,
JSONConfig config,
Predicate<MutableEntry<Object,Object>> predicate)
创建JSONWriter
|
JSONWriter |
JSONWriter.writeField(MutableEntry<Object,Object> pair)
写出字段名及字段值,如果字段值是
null 且忽略null值,则不写出任何内容 |
JSONWriter |
JSONWriter.writeKey(String key)
写出键,自动处理分隔符和缩进,并包装键名
|
JSONWriter |
JSONWriter.writeNewLine()
写出换行符
|
JSONWriter |
JSONWriter.writeNumber(Number number)
|
JSONWriter |
JSONWriter.writeRaw(String csq)
写入原始字符串值,不做任何处理
|
JSONWriter |
JSONWriter.writeSpaceAfterSeparators()
写出空白字符,默认写出一个空格
|
Copyright © 2025. All rights reserved.