123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- package api.common.util;
- import com.fasterxml.jackson.core.JsonProcessingException;
- import com.fasterxml.jackson.databind.JavaType;
- import com.fasterxml.jackson.databind.JsonNode;
- import com.fasterxml.jackson.databind.ObjectMapper;
- import com.fasterxml.jackson.databind.node.TextNode;
- import com.fasterxml.jackson.databind.type.TypeFactory;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- public class JsonUtil {
- private static final ObjectMapper mapper = new ObjectMapper();
- /**
- * bean 转成 json
- *
- * @param bean bean 对象
- * @param <T> 声明为泛型方法
- * @return json 字符串
- * @throws JsonProcessingException 异常
- */
- public static <T> String beanToJson(T bean) throws JsonProcessingException {
- return new ObjectMapper().writeValueAsString(bean);
- }
- /**
- * json 转成 bean
- *
- * @param json json 字符串
- * @param tClass 返回值类型
- * @param <T> 声明为泛型方法
- * @return bean 对象
- * @throws JsonProcessingException 异常
- */
- public static <T> T jsonToBean(String json, Class<T> tClass) throws JsonProcessingException {
- return new ObjectMapper().readValue(json, tClass);
- }
- /**
- * bean 转成 json
- *
- * @param list 列表对象
- * @param <T> 声明为泛型方法
- * @return json 字符串
- * @throws JsonProcessingException 异常
- */
- public static <T> String listToJson(T list) throws JsonProcessingException {
- return new ObjectMapper().writeValueAsString(list);
- }
- public static <T> List<T> jsonToList(String json, Class<T> tClass) throws JsonProcessingException {
- JavaType javaType = TypeFactory.defaultInstance().constructParametricType(List.class, tClass);
- if(ObjectUtil.isNull(json)){
- return new ArrayList<>();
- }
- List<T> list = new ObjectMapper().readValue(json,javaType);
- return list;
- }
- public static Map jsonToMap(String json) {
- try {
- return new ObjectMapper().readValue(json, HashMap.class);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return new HashMap();
- }
- public static JsonNode readTree(String json) {
- try {
- JsonNode jsonNode = mapper.readTree(json);
- } catch (JsonProcessingException e) {
- e.printStackTrace();
- }
- return new TextNode("");
- }
- }
|