我正在使用:
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
@JsonFormat( pattern = "MM-dd-yyyy" )
private LocalDate start;
但它接受 02-30-2019
并自动转换为 02-28-2019
。但我想限制那个日期。
我还用过:
@DateTimeFormat(iso = java.time.format.DateTimeFormatter.ISO_DATE)
@JsonFormat( pattern = "MM-dd-yyyy" )
private LocalDate start;
但它会给出编译时错误:Attribute value must be constant
。
在这里安装:
我有同样的问题,也用 u
代替 y
但没有帮助:
@FutureOrPresent
@DateTimeFormat( iso = DateTimeFormat.ISO.DATE,pattern = "MM-dd-uuuu")
@JsonFormat( pattern = "MM-dd-uuuu" )
private LocalDate start;
我想在解析时进行限制。它接受 02-31-2019
并自动转换为 02-28-2019
。引用:https://stackoverflow.com/a/41104034/6097074
现在 2018 年 9 月 8 日
如果我使用: private LocalDate start;//不使用 DateTimeFormat 和 JsonFormat 注解
如果我使用:yyyy-MM-dd
在 json 中格式化日期,即 2014-01-01
。
但我需要解析为 MM-dd-yyyy
。
请帮助解决这个问题, 谢谢。
最佳答案
我得到了你的问题的解决方案:
删除下划线
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
@JsonFormat( pattern = "MM-dd-yyyy" )
只需使用:
private LocalDate start;
并在 yyyy-MM-dd 或 yyyy-MM-ddTHH:mm:ss 中发送日期( Spring 使用 ResolverStyle.Strict 进行日期解析的默认日期格式)日期格式。
关于java - ResolverStyle.STRICT 在 `@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)` 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52129200/