码迷,mamicode.com
首页 > Web开发 > 详细

json工具类封装与解析

时间:2014-12-29 12:07:17      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:

package com.chinatelecom.personalcustom.common.util;

import java.io.IOException;

import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonUtil {
	
	/**
	 * 将字符串转成实体类,允许斜杠等字符串
	 */
	public static <T> T jsonToEntity(String json, Class<T> clazz) throws IOException {
        ObjectMapper mapper = new ObjectMapper();
        // 允许反斜杆等字符
        mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS,true);
        return mapper.readValue(json, clazz);
    }
	
	/**
	 * 实体类转JSON字符串
	 */
	public static String entityToJson(Object entity){
		return JSON.toJSONString(entity);
	}
	
	/**
	 * 将字符串转成JsonNode,允许斜杠等字符串
	 */
	public static JsonNode jsonToJsonNode(String json) throws IOException {
        ObjectMapper mapper = new ObjectMapper();
        // 允许反斜杆等字符
        mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS,true);
        //允许单引号
        mapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES,true);
        return mapper.readValue(json, JsonNode.class);
    }
	
	public static <T> String objectToJson(Object object, Class<T> cls)throws Exception {
		ObjectMapper mapper = new ObjectMapper();
		mapper.registerSubtypes(cls);
		String reqJson = mapper.writeValueAsString(object);
		return reqJson;
	}
	
}

json工具类封装与解析

标签:

原文地址:http://blog.csdn.net/sxj_world/article/details/42236091

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!