2025-09-08 17:01:50 +08:00
|
|
|
package com.yj.earth.common.util;
|
|
|
|
|
|
|
|
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Map与JSON互相转换工具类
|
|
|
|
|
*/
|
|
|
|
|
@Slf4j
|
2025-09-16 17:41:23 +08:00
|
|
|
public class JsonUtil {
|
2025-09-08 17:01:50 +08:00
|
|
|
|
|
|
|
|
private static final ObjectMapper objectMapper = new ObjectMapper();
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 将 Map 转换为 JSON 字符串
|
|
|
|
|
*/
|
|
|
|
|
public static String mapToJson(Map<String, Object> map) {
|
|
|
|
|
if (map == null || map.isEmpty()) {
|
|
|
|
|
return "{}";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
return objectMapper.writeValueAsString(map);
|
|
|
|
|
} catch (JsonProcessingException e) {
|
|
|
|
|
log.error("Map转JSON失败", e);
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 将 JSON 字符串转换为 Map
|
|
|
|
|
*/
|
|
|
|
|
public static Map<String, Object> jsonToMap(String json) {
|
|
|
|
|
if (json == null || json.trim().isEmpty()) {
|
|
|
|
|
return new HashMap<>(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
return objectMapper.readValue(json, new TypeReference<Map<String, Object>>() {});
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("JSON转Map失败、JSON内容: {}", json, e);
|
|
|
|
|
return new HashMap<>(0);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|