Jackson的Json转换

jopen 11年前

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