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


  • 相关阅读:
    spring-redis SortedSet类型成员的过期时间处理
    Redis "MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk"问题
    2015InfoQ软件大会技术记录
    nginx搭建文件服务器
    Electron
    TaoKeeper
    (转)前端:将网站打造成单页面应用SPA
    转(解决GLIBC_2.x找不到的编译问题)
    java编译、编码、语言设置
    Discuz! 论坛
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3220101.html
Copyright © 2020-2023  润新知