zoukankan      html  css  js  c++  java
  • Jackson的Json转换

    public class JacksonJsonUtil {
    	private static ObjectMapper mapper;
    	
    	/**
    	 * 获取ObjectMapper实例
    	 * @param createNew 方式:true,新实例;false,存在的mapper实例
    	 * @return
    	 */
    	public static synchronized ObjectMapper getMapperInstance(boolean createNew) {   
            if (createNew) {   
                return new ObjectMapper();   
            } else if (mapper == null) {   
                mapper = new ObjectMapper();   
            }   
            return mapper;   
        } 
    	
    	/**
    	 * 将java对象转换成json字符串
    	 * @param obj 准备转换的对象
    	 * @return json字符串
    	 * @throws Exception 
    	 */
    	public static String beanToJson(Object obj) throws Exception {
    		try {
    			ObjectMapper objectMapper = getMapperInstance(false);
    			String json =objectMapper.writeValueAsString(obj);
    			return json;
    		} catch (Exception e) {
    			throw new Exception(e.getMessage());
    		}		
    	}
    	
    	/**
    	 * 将java对象转换成json字符串
    	 * @param obj 准备转换的对象
    	 * @param createNew ObjectMapper实例方式:true,新实例;false,存在的mapper实例
    	 * @return json字符串
    	 * @throws Exception
    	 */
    	public static String beanToJson(Object obj,Boolean createNew) throws Exception {
    		try {
    			ObjectMapper objectMapper = getMapperInstance(createNew);
    			String json =objectMapper.writeValueAsString(obj);
    			return json;
    		} catch (Exception e) {
    			throw new Exception(e.getMessage());
    		}		
    	}
    	
    	/**
    	 * 将json字符串转换成java对象
    	 * @param json 准备转换的json字符串
    	 * @param cls  准备转换的类
    	 * @return 
    	 * @throws Exception 
    	 */
    	public static Object jsonToBean(String json, Class<?> cls) throws Exception {
    		try {
    		ObjectMapper objectMapper = getMapperInstance(false);
    		Object vo = objectMapper.readValue(json, cls);
    		return vo;
    		} catch (Exception e) {
    			throw new Exception(e.getMessage());
    		}	
    	}
    	
    	/**
    	 * 将json字符串转换成java对象
    	 * @param json 准备转换的json字符串
    	 * @param cls  准备转换的类
    	 * @param createNew ObjectMapper实例方式:true,新实例;false,存在的mapper实例
    	 * @return
    	 * @throws Exception
    	 */
    	public static Object jsonToBean(String json, Class<?> cls,Boolean createNew) throws Exception {
    		try {
    		ObjectMapper objectMapper = getMapperInstance(createNew);
    		Object vo = objectMapper.readValue(json, cls);
    		return vo;
    		} catch (Exception e) {
    			throw new Exception(e.getMessage());
    		}	
    	}
    }


  • 相关阅读:
    小程序_递归求年纪
    小程序_递归求阶层
    把字符串复制到剪贴板
    主流的三种RF方案及其优缺点比较
    CC1100E的ESD指标?
    delphi怎样打开一个文本文件
    CC1100模块 250K的速率的问题
    delphi 中显示access数据库表怎么实现
    delphi与Access数据库连接的步骤
    数据库基本语句
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3220101.html
Copyright © 2011-2022 走看看