zoukankan      html  css  js  c++  java
  • Web 开发工具类(3): JsonUtils

    JsonUtils

    整合了一些对Json的相关操作:
    package com.evan.common.utils;
    
    import java.util.List;
    
    import com.fasterxml.jackson.core.JsonProcessingException;
    import com.fasterxml.jackson.databind.JavaType;
    import com.fasterxml.jackson.databind.ObjectMapper;
    
    /**
     * 淘淘商城自定义响应结构
     */
    public class JsonUtils {
    
        // 定义jackson对象
        private static final ObjectMapper MAPPER = new ObjectMapper();
    
        /**
         * 将对象转换成json字符串。
         * <p>Title: pojoToJson</p>
         * <p>Description: </p>
         * @param data
         * @return
         */
        public static String objectToJson(Object data) {
        	try {
    			String string = MAPPER.writeValueAsString(data);
    			return string;
    		} catch (JsonProcessingException e) {
    			e.printStackTrace();
    		}
        	return null;
        }
        
        /**
         * 将json结果集转化为对象
         * 
         * @param jsonData json数据
         * @param clazz 对象中的object类型
         * @return
         */
        public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {
            try {
                T t = MAPPER.readValue(jsonData, beanType);
                return t;
            } catch (Exception e) {
            	e.printStackTrace();
            }
            return null;
        }
        
        /**
         * 将json数据转换成pojo对象list
         * <p>Title: jsonToList</p>
         * <p>Description: </p>
         * @param jsonData
         * @param beanType
         * @return
         */
        public static <T>List<T> jsonToList(String jsonData, Class<T> beanType) {
        	JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType);
        	try {
        		List<T> list = MAPPER.readValue(jsonData, javaType);
        		return list;
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
        	
        	return null;
        }
        
    }
    


  • 相关阅读:
    C++出现 error: no match for 'operator==' (operand types are 'Person' and 'const Person')
    python三元运算符公式/出错怎么看
    我学函数遗漏的东西
    学习函数时一些没注意到的地方
    Python文件操作回顾
    我学习python没有记住的东西
    转载
    UE SC -kismetmathlibrary
    LineTrace跟Overlap开销
    UE4 插件无法读取常见错误
  • 原文地址:https://www.cnblogs.com/evan-liang/p/9189608.html
Copyright © 2011-2022 走看看