fastjson2 icon indicating copy to clipboard operation
fastjson2 copied to clipboard

[BUG] 自定义LocalDateTime Reader无效

Open Ive4 opened this issue 1 year ago • 2 comments

问题描述

简要描述您碰到的问题。

环境信息

请填写以下信息:

  • OS信息: MacBook M1 Pro
  • JDK信息: 1.8.0_312
  • 版本信息:2.0.44

重现步骤

JSON.register(LocalDateTime.class, new LocalDateTimeReader(new SmartDateFormat())); // SmartDateFormat自己随便定一个,能识别多种格式就行

@Data public class Person { private Integer age = 10; private Sex sex = Sex.F;

@JSONField(format = "yyyyMMddHHmmss") private LocalDateTime localDateTime = LocalDateTime.now();

private LocalDate localDate = LocalDate.now(); private LocalTime localTime = LocalTime.now(); private DateTime dateTime = new DateTime();

private Integer count; }

main

val person1 = new Person();
val str1 = JSON.toJSONString(person1);
val p = JSON.parseObject(str1,Person.class);  // 这里报错,报错堆栈可以看到并未使用自定义的SmartDateFormat来解析日期数据

Ive4 avatar Jan 16 '24 06:01 Ive4

缺省就是能识别多种格式的哈,你有哪些格式是没有被自动识别的?

wenshao avatar Jan 18 '24 07:01 wenshao

缺省就是能识别多种格式的哈,你有哪些格式是没有被自动识别的?

这里能否提供一个多DateFormat的设置?目前只能使用fastjson固定的,即使自己去注册自定义的reader都不生效

Ive4 avatar Apr 02 '24 09:04 Ive4