/** * 生成一个Gson 对象 * * @return */ public static Gson newGsonInstance() { //对localdate 和 localdatetime 的处理 做格式化处理(兼容老核心的string 类型) return new GsonBuilder() .registerTypeAdapter(LocalDateTime.class, (JsonSerializer<LocalDateTime>) (src, typeOfSrc, context) -> new JsonPrimitive(src.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")))) .registerTypeAdapter(LocalDate.class, (JsonSerializer<LocalDate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))) .registerTypeAdapter(LocalDateTime.class, (JsonDeserializer<LocalDateTime>) (json, type, jsonDeserializationContext) -> { String datetime = json.getAsJsonPrimitive().getAsString(); return LocalDateTime.parse(datetime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); }).registerTypeAdapter(LocalDate.class, (JsonDeserializer<LocalDate>) (json, type, jsonDeserializationContext) -> { String datetime = json.getAsJsonPrimitive().getAsString(); return LocalDate.parse(datetime, DateTimeFormatter.ofPattern("yyyy-MM-dd")); }).create(); }