zoukankan      html  css  js  c++  java
  • jackson工具类(JsonUtil )

    springboot用的就是这个

    import com.fasterxml.jackson.core.JsonParser;
    import com.fasterxml.jackson.core.type.TypeReference;
    import com.fasterxml.jackson.databind.DeserializationFeature;
    import com.fasterxml.jackson.databind.JavaType;
    import com.fasterxml.jackson.databind.ObjectMapper;
    
    import java.io.*;
    import java.util.ArrayList;
    import java.util.List;
    
    public class JsonUtil {
        static ObjectMapper objectMapper = new ObjectMapper();
        static {
            objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);// 允许pojo中有在json串中不存在的字段
            objectMapper.configure(JsonParser.Feature.ALLOW_COMMENTS, true);// 允许有注释
        }
        
        public static <T>T parseObject(InputStream inputStream, Class<T> tClass)  {
            Reader reader = new InputStreamReader(inputStream);
            try {
                return objectMapper.readValue(reader, tClass);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
        public static <T>T parseObject(String json,Class<T> tClass){
            try {
                return objectMapper.readValue(json,tClass);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
        public static String toJsonString(Object object){
            try {
                return objectMapper.writeValueAsString(object);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
        public static <T>List<T> parseList(String json,Class<T> tClass) {
            JavaType javaType = objectMapper.getTypeFactory().constructParametricType(List.class, tClass);
            try {
                List<T> list  = objectMapper.readValue(json, javaType);
                return list;
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    
    }
  • 相关阅读:
    C# 访问AD查询用户信息
    js UTC时间转本地时间
    Silverlight中的序列化和反序列化
    ASP.NET FORM认证配置排错记录
    opencv中cvSetData用法
    WS2812B-64位 8*8位 RGB LED点阵
    1602 LCDKeypad Shield
    Wemos D1 使用ESP8266 板载存储
    Wemos D1 ESP8266的网络工作模式
    Wemos D1 1602 液晶屏幕
  • 原文地址:https://www.cnblogs.com/dongma/p/14030978.html
Copyright © 2011-2022 走看看