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


  • 相关阅读:
    Mybatis中tinyint(1)数据自动转化为boolean处理
    使用spring-cloud-starter-bus-amqp做微服务配置刷广播,config-client配置 未刷新的 问题
    深入Spring Boot: 怎样排查 java.lang.ArrayStoreException
    springboot activiti 配置项详解
    MySQL_插入更新 ON DUPLICATE KEY UPDATE
    Maven:mirror和repository 区别
    ajax请求二进制流图片并渲染到html中img标签
    不要在工作中做滥竽充数的人
    获取客户端IP地址的三个HTTP请求头的区别
    web服务器获取请求客户端真实地址的方法
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3220101.html
Copyright © 2011-2022 走看看