Java教程

Util:Java对象转换成Json字符串、Json数据转换对象List

本文主要是介绍Util:Java对象转换成Json字符串、Json数据转换对象List,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package com.web.util;

import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;

import java.util.List;
import java.util.Map;

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  beanType 对象中的object类型
     * @return
     */
    public static <T> T jsonToPoJjo(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;
    }

    public static Map jsonToMap(String str){
        Map maps = (Map)JSON.parse(str);
        System.out.println("这是来用Json类解析JSON字符串的!");
        for (Object map:maps.entrySet()){
            System.out.println(((Map.Entry)map).getKey()+"       "+((Map.Entry)map).getValue());
        }
        return maps;
    }
}

这篇关于Util:Java对象转换成Json字符串、Json数据转换对象List的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!