类 JSONUtils
- java.lang.Object
-
- network.nerve.core.parse.JSONUtils
-
public final class JSONUtils extends Object
Json序列化与反序列化工具,使用了jackson作为工具包,优化时主要参考官方文档- 版本:
- 1.0
- 作者:
- captain
- 另请参阅:
- Jackson-Performance
以下列举的优化点重要程度递减
1.重用重量级对象: ObjectMapper (data-binding) 已实现
2.Close things that need to be closed: JsonParser, JsonGenerator 未用到
3.输入输出尽量选择字节流,避免二次转换 已实现 文档中还说要进一步优化,可以关注下面四点 1.Compatible, not so easy: Use the Streaming API 2.Non-compatible, easy: Smile binary "JSON" 3.Non-compatible, easy: POJOs as JSON Arrays (Jackson 2.1) 4.Compatible, easy: Afterburner
-
-
构造器概要
构造器 构造器 说明 JSONUtils()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static <T> TbyteArray2pojo(byte[] array, Class<T> clazz)static com.fasterxml.jackson.databind.ObjectMappergetInstance()static <T> List<T>json2list(String jsonArrayStr, Class<T> clazz)json array string convert to list with javaBean/JSON字符串转Liststatic <T> Map<String,Object>json2map(String jsonStr)json string convert to map/JSON字符串转MAPstatic <T> Map<String,T>json2map(String jsonStr, Class<T> clazz)json string convert to map with javaBean/JSON转MAPstatic <T> Tjson2pojo(String jsonStr, Class<T> clazz)json string convert to javaBean/JSON字符串转普通对象static <T> Tjson2pojo(String json, Class<T> entityClass, Class... itemClass)JSON字符串转为复杂对象(list,map等)static <T> Map<String,T>jsonToMap(String jsonStr)json string convert to map/JSON字符串转MAPstatic <T> Tmap2pojo(Map map, Class<T> clazz)map convert to javaBean/map转javabeanstatic byte[]obj2ByteArray(Object obj)static Stringobj2json(Object obj)javaBean,list,array convert to json string/对象转JSON字符串static Stringobj2PrettyJson(Object obj)
-
-
-
方法详细资料
-
getInstance
public static com.fasterxml.jackson.databind.ObjectMapper getInstance()
-
obj2ByteArray
public static byte[] obj2ByteArray(Object obj) throws com.fasterxml.jackson.core.JsonProcessingException
- 抛出:
com.fasterxml.jackson.core.JsonProcessingException
-
obj2json
public static String obj2json(Object obj) throws com.fasterxml.jackson.core.JsonProcessingException
javaBean,list,array convert to json string/对象转JSON字符串- 参数:
obj- 需转换的对象- 返回:
- 转换得到的JSON字符串
- 抛出:
com.fasterxml.jackson.core.JsonProcessingException
-
obj2PrettyJson
public static String obj2PrettyJson(Object obj) throws com.fasterxml.jackson.core.JsonProcessingException
- 抛出:
com.fasterxml.jackson.core.JsonProcessingException
-
json2pojo
public static <T> T json2pojo(String jsonStr, Class<T> clazz) throws IOException
json string convert to javaBean/JSON字符串转普通对象- 参数:
jsonStr- JSON字符串clazz- 目标对象类型- 返回:
- 转换得到的对象
- 抛出:
IOException
-
byteArray2pojo
public static <T> T byteArray2pojo(byte[] array, Class<T> clazz) throws IOException- 抛出:
IOException
-
json2pojo
public static <T> T json2pojo(String json, Class<T> entityClass, Class... itemClass) throws IOException
JSON字符串转为复杂对象(list,map等)- 参数:
json- JSON字符串entityClass- 目标对象itemClass- List/Map保存的数据的类型- 返回:
- 转换得到的对象
- 抛出:
IOException
-
json2map
public static <T> Map<String,Object> json2map(String jsonStr) throws IOException
json string convert to map/JSON字符串转MAP- 参数:
jsonStr- JSON字符串- 返回:
- 转换得到的MAP
- 抛出:
IOException
-
jsonToMap
public static <T> Map<String,T> jsonToMap(String jsonStr) throws IOException
json string convert to map/JSON字符串转MAP- 参数:
jsonStr- JSON字符串- 返回:
- 转换得到的MAP
- 抛出:
IOException
-
json2map
public static <T> Map<String,T> json2map(String jsonStr, Class<T> clazz) throws IOException
json string convert to map with javaBean/JSON转MAP- 参数:
jsonStr- JSON字符串clazz- MAP中值的类型- 返回:
- 转换得到的MAP
- 抛出:
IOException
-
json2list
public static <T> List<T> json2list(String jsonArrayStr, Class<T> clazz) throws IOException
json array string convert to list with javaBean/JSON字符串转List- 参数:
jsonArrayStr- JSON字符串clazz- List存储的对象类型- 返回:
- 转换后得到的List
- 抛出:
IOException
-
-