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());
    		}	
    	}
    }


  • 相关阅读:
    php记录代码执行时间
    java中针对同一变量的不同函数的互斥操作
    Linux下mysql新建账号及权限设置
    Linux下重启apache
    Mysql数据导入
    ubuntu安装phpcurl与phptidy扩展
    Linux服务器间文件传输
    Flash本地传递大数据,图片数据,localconnection 超出大小,超出限制 bitmapdata 拂晓风起
    [Java][JavaScript]字符串数组与字符串之间的互转(join/split)(转) 拂晓风起
    java poi读取excel公式,返回计算值(转) 拂晓风起
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3220101.html
Copyright © 2011-2022 走看看