# json-util
**Repository Path**: yidasanqian/json-util
## Basic Information
- **Project Name**: json-util
- **Description**: json-util工具类整合了Jackson、Gson和Fastjson库并统一API。
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 106
- **Forks**: 22
- **Created**: 2018-01-15
- **Last Updated**: 2024-06-06
## Categories & Tags
**Categories**: json-tools
**Tags**: None
## README
# json-util
[](http://search.maven.org/#artifactdetails%7Cio.github.yidasanqian%7Cjson-util%7C2.0.1%7Cjar)
Json Util Integrate Jackson、Gson And Fastjson
json-util工具类整合了Jackson、Gson和Fastjson库并统一API。
# Env
- JDK8+
# Feature
统一调用API,形如`toXXX`。目前支持的转换的列表:
- List
- Map
- JsonString
- Pojo
List支持泛型,JsonString支持指定日期格式化,支持对象和Map的互相转换。
# Usage
maven
```
io.github.yidasanqian
json-util
2.0.1
```
选择 jackson、gson and fastjson 其中之一引入 pom.xml:
```
specify version
specify version
specify version
com.fasterxml.jackson.core
jackson-databind-jsr310
${jackson.version}
com.google.code.gson
gson
${gson.version}
com.alibaba
fastjson
${fastjson.version}
```
初始化时可以指定使用的Json库:
```
JsonUtil.initJson(JsonEnum.FASTJSON);
```
JsonEnum的值有`JACKSON`, `FASTJSON`, `GSON`
若未指定则自动查找用户引入的Json库(jackson, gson, fastjson),若存在多个则默认使用Jackson作为json解析库。
解析到`List`的例子:
```
String json = "[1, 2, 4, 5]";
List result = JsonUtil.toList(json);
...
json = "[{"id": 1,"username": "yidasanqian"},{"id": 2,"username": "yidasanqian2"}]"
TypeReference> typeReference = new TypeReference>() {};
List result = JsonUtil.toList(json, typeReference.getType());
```
解析到`Map`的例子:
```
String json = "{"id":1, "username":"yidasanqian"}"
TypeReference