| Package | Description |
|---|---|
| org.dromara.hutool.json |
JSON(JavaScript Object Notation JavaScript对象表示法)封装,包含以下组件:
JSONObject:使用键值对表示的数据类型,使用"{}"包围
JSONArray:使用列表表示的数据类型,使用"[]"包围
JSON封装主要包括JSON表示和JSON转换:
<--JSONConverter-- <---JSONParser----
Java对象 <=================> JSON对象 <=================> JSON字符串
------mapper-----> ---JSONWriter---->
当然,为了高效转换,如果没有自定义需求,Java对象可以不通过JSON对象与JSON字符串转换:
JSONTokener:JSON字符串底层解析器,通过Stream方式读取JSON字符串并对不同字段自定义处理。 |
| org.dromara.hutool.json.serialize |
JSON序列化和反序列化,提供对象和JSON之间的转换
|
| Modifier and Type | Class and Description |
|---|---|
class |
JSONArray
JSON数组
JSON数组是表示中括号括住的数据表现形式 对应的JSON字符串格格式例如: ["a", "b", "c", 12] |
class |
JSONObject
JSON对象
例: json = new JSONObject().put("JSON", "Hello, World! |
| Modifier and Type | Method and Description |
|---|---|
static JSON |
JSONUtil.readJSON(File file,
Charset charset)
读取JSON
|
| Modifier and Type | Method and Description |
|---|---|
Object |
JSONSupport.deserialize(JSON json)
JSON转Bean
|
static Object |
JSONUtil.getByPath(JSON json,
String expression)
通过表达式获取JSON中嵌套的对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
static <T> T |
JSONUtil.getByPath(JSON json,
String expression,
T defaultValue)
通过表达式获取JSON中嵌套的对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
static boolean |
JSONUtil.isEmpty(JSON json)
|
static String |
JSONUtil.toXmlStr(JSON json)
转换为XML字符串
|
| Modifier and Type | Interface and Description |
|---|---|
interface |
JSONSerializer<T extends JSON,V>
序列化接口,通过实现此接口,实现自定义的对象转换为JSON的操作
|
| Modifier and Type | Method and Description |
|---|---|
static JSONSerializer<? extends JSON,?> |
GlobalSerializeMapping.getSerializer(Type type)
获取自定义的序列化器,如果未定义返回
null |
| Modifier and Type | Method and Description |
|---|---|
TemporalAccessor |
TemporalAccessorSerializer.deserialize(JSON json) |
T |
JSONDeserializer.deserialize(JSON json)
反序列化,通过实现此方法,自定义实现JSON转换为指定类型的逻辑
|
Copyright © 2024. All rights reserved.