Java Gson 工具类
import com.google.gson.*;
import com.google.gson.reflect.TypeToken;
import lombok.SneakyThrows;
import java.lang.reflect.Type;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.Map;
import java.util.Objects;
public class GsonUtils {
private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
private static final DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
private static final DateTimeFormatter timeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss");
private static final JsonSerializer<LocalDateTime> dateTimeSerializer
= (obj, type, ctx) -> new JsonPrimitive(dateTimeFormatter.format(obj));
private static final JsonSerializer<LocalDate> dateSerializer
= (obj, type, ctx) -> new JsonPrimitive(dateFormatter.format(obj));
private static final JsonSerializer<LocalTime> timeSerializer
= (obj, type, ctx) -> new JsonPrimitive(timeFormatter.format(obj));
private static final JsonDeserializer<LocalDateTime> dateTimeDeserializer
= (json, type, ctx) -> LocalDateTime.parse(json.getAsJsonPrimitive().getAsString