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);
            }
        }
    
    }
  • 相关阅读:
    mysqlsql练习题
    日志打印
    【JVM】落日黄昏后:CMS垃圾回收器
    【JVM】调优常用参数总结
    【JVM】如何选择垃圾回收器?
    【Spring Boot】thymeleaf模板引擎的使用
    printf
    CSV文件——逗号分隔值(字符分隔值)
    VectorCAST的基本操作步骤
    VectorCAST常见操作byWXT
  • 原文地址:https://www.cnblogs.com/dongma/p/14030978.html
Copyright © 2011-2022 走看看