import org.apache.commons.lang.StringUtils; import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.type.TypeReference; import java.io.IOException; /** * Json序列化与反序列化工具类 */ public class JsonUtil { private static final ObjectMapper objectMapper = new ObjectMapper(); /** * 对象转JSON * * @param t * 对象 * @return */ public static <T> String toJson(T t){ try { return objectMapper.writeValueAsString(t); }catch (IOException e){ throw new RuntimeException("JsonUtil.toJson error",e); } } /** * JSON转对象 * * @param jsonString * json字符串 * @param valueType * 对象类型 * @return */ public static <T> T fromJson(String jsonString, Class<T> valueType) { if (StringUtils.isBlank(jsonString)) { return null; } try { return objectMapper.readValue(jsonString, valueType); } catch (IOException e) { throw new RuntimeException("JsonUtil.fromJson error", e); } } /** * * @param jsonString * json字符串 * @param typeReference * 泛型信息 * @return */ public static <T> T fromJson(String jsonString, TypeReference<T> typeReference) { if (StringUtils.isBlank(jsonString)) { return null; } try { return objectMapper.readValue(jsonString, typeReference); } catch (IOException e) { throw new RuntimeException("JsonUtil.fromJson error", e); } } /** * 判断是否json 字符串 * @param str * @return */ public static boolean isJsonString(String str) { if(StringUtils.isBlank(str)){ return false; } try { objectMapper.readTree(str); return true; } catch (IOException e) { return false; } } }
json串操作
猜你喜欢
转载自www.cnblogs.com/cc-robot/p/11068376.html
今日推荐
周排行