public class JsonUtils { public static void main(String[] args) { } // 定义jackson对象,用于 Java 对象的序列化及反序列化 private static final ObjectMapper MAPPER = new ObjectMapper(); static { // config //设置实体无属性和json串属性对应时不会出错,只转换对应的属性 MAPPER.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); // 忽略空bean转 JSON 的错误 MAPPER.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); } /** * 将对象转换成json字符串。 * <p>Title: pojoToJson</p> * <p>Description: </p> * * @param data * @return */ public static String objectToJson(Object data) { try { return MAPPER.writeValueAsString(data); } catch (JsonMappingException e) { } catch (IOException e) { } return null; } /** * 将json结果集转化为对象 * * @param jsonData json数据 * @param beanType 对象中的object类型,<T> 将此方法声明为泛型方法,可传入任何对象 * @return <T> 目标对象 */ public static <T> T jsonToPojo(String jsonData, Class<T> beanType) { if (StringUtils.isEmpty(jsonData) || null == beanType) { return null; } try { return MAPPER.readValue(jsonData, beanType); } catch (Exception e) { } return null; } /** * 将json数据转换成pojo对象list * <p>Title: jsonToList</p> * <p>Description: </p> * * @param jsonData * @param beanType * @return */ public static <T> List<T> jsonToList(String jsonData, Class<T> beanType) { if (StringUtils.isEmpty(jsonData) || null == beanType) { return null; } JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { return MAPPER.readValue(jsonData, javaType); } catch (Exception e) { } return null; } }
通过对象生成json格式
最新推荐文章于 2024-08-26 23:40:53 发布
这是一个Java工具类,主要用于Java对象与JSON之间的转换。它使用Jackson库,配置了在对象属性与JSON字段不完全匹配时仍能进行转换,并且可以处理空bean转JSON的错误。提供了将对象转换为JSON字符串,JSON字符串转换为指定类型的对象,以及JSON数据转换为对象列表的方法。
摘要由CSDN通过智能技术生成