mirror of
https://gitee.com/jzsw-it/yexuejc-base.git
synced 2025-06-07 06:14:04 +08:00
1.2.5 JsonUtil 支持Map泛型转换
This commit is contained in:
parent
f2e8bc624b
commit
cb78538c01
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
### 使用
|
### 使用
|
||||||
>yexuejc.base.version=1.2.4
|
>yexuejc.base.version=1.2.5
|
||||||
|
|
||||||
pom.xml
|
pom.xml
|
||||||
```
|
```
|
||||||
|
@ -1,6 +1,13 @@
|
|||||||
yexuejc-base 更新记录
|
yexuejc-base 更新记录
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
|
#### version :1.2.5
|
||||||
|
**time:2018-12-20 13:13:23** <br/>
|
||||||
|
**branch:** master <br/>
|
||||||
|
**update:** <br/>
|
||||||
|
>1. 丰富[JsonUtil](src/main/java/com/yexuejc/base/util/JsonUtil.java),支持直接对Map泛型转换
|
||||||
|
|
||||||
|
#
|
||||||
#### version :1.2.4
|
#### version :1.2.4
|
||||||
**time:2018-11-27 14:46:04** <br/>
|
**time:2018-11-27 14:46:04** <br/>
|
||||||
**branch:** master <br/>
|
**branch:** master <br/>
|
||||||
|
2
pom.xml
2
pom.xml
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>com.yexuejc.base</groupId>
|
<groupId>com.yexuejc.base</groupId>
|
||||||
<artifactId>yexuejc-base</artifactId>
|
<artifactId>yexuejc-base</artifactId>
|
||||||
<version>1.2.4</version>
|
<version>1.2.5</version>
|
||||||
|
|
||||||
<name>${project.artifactId}</name>
|
<name>${project.artifactId}</name>
|
||||||
|
|
||||||
|
@ -5,9 +5,11 @@ import com.fasterxml.jackson.core.JsonParseException;
|
|||||||
import com.fasterxml.jackson.core.JsonParser;
|
import com.fasterxml.jackson.core.JsonParser;
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||||
import com.fasterxml.jackson.databind.*;
|
import com.fasterxml.jackson.databind.*;
|
||||||
|
import com.fasterxml.jackson.databind.type.MapType;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* json工具类,基于jackson
|
* json工具类,基于jackson
|
||||||
@ -95,12 +97,13 @@ public class JsonUtil {
|
|||||||
return pojo;
|
return pojo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Json字符串转换为Java对象
|
* Json字符串转换为Java对象
|
||||||
*
|
*
|
||||||
* @param json
|
* @param json 字符串
|
||||||
* @param parametrized
|
* @param parametrized 容器类
|
||||||
* @param parameterClasses
|
* @param parameterClasses 实际类
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static <T> T json2Obj(String json, Class<T> parametrized, Class<?>... parameterClasses) {
|
public static <T> T json2Obj(String json, Class<T> parametrized, Class<?>... parameterClasses) {
|
||||||
@ -116,12 +119,56 @@ public class JsonUtil {
|
|||||||
return pojo;
|
return pojo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Json字符串转换为Java-Map对象
|
||||||
|
*
|
||||||
|
* @param json 字符串
|
||||||
|
* @param mapClass Map 继承类
|
||||||
|
* @param keyClass Key 类
|
||||||
|
* @param valueClass Value 类
|
||||||
|
* @param <T>
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static <T> T json2Obj(String json, Class<? extends Map> mapClass, Class<?> keyClass, Class<?> valueClass) {
|
||||||
|
T pojo = null;
|
||||||
|
MapType mapType = objectMapper.getTypeFactory().constructMapType(mapClass, keyClass, valueClass);
|
||||||
|
try {
|
||||||
|
pojo = objectMapper.readValue(json, mapType);
|
||||||
|
} catch (JsonParseException e) {
|
||||||
|
} catch (JsonMappingException e) {
|
||||||
|
} catch (IOException e) {
|
||||||
|
}
|
||||||
|
return pojo;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Json字符串转换为Java-Map对象
|
||||||
|
*
|
||||||
|
* @param json 字符串
|
||||||
|
* @param mapClass Map 继承类
|
||||||
|
* @param keyType Key 类
|
||||||
|
* @param valueType Value 类
|
||||||
|
* @param <T>
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static <T> T json2Obj(String json, Class<? extends Map> mapClass, JavaType keyType, JavaType valueType) {
|
||||||
|
T pojo = null;
|
||||||
|
MapType mapType = objectMapper.getTypeFactory().constructMapType(mapClass, keyType, valueType);
|
||||||
|
try {
|
||||||
|
pojo = objectMapper.readValue(json, mapType);
|
||||||
|
} catch (JsonParseException e) {
|
||||||
|
} catch (JsonMappingException e) {
|
||||||
|
} catch (IOException e) {
|
||||||
|
}
|
||||||
|
return pojo;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Json字符串转换为Java对象
|
* Json字符串转换为Java对象
|
||||||
*
|
*
|
||||||
* @param json
|
* @param json 字符串
|
||||||
* @param parametrized
|
* @param parametrized 容器类
|
||||||
* @param parameterClasses
|
* @param parameterClasses 实际类
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static <T> T json2Obj(InputStream json, Class<T> parametrized, Class<?>... parameterClasses) {
|
public static <T> T json2Obj(InputStream json, Class<T> parametrized, Class<?>... parameterClasses) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user