如果日期可以为空,如何格式化日期 spring

问题描述 投票:0回答:1

我在 thymeleaf 上有一个表单,其中包含许多 type=date 输入。我需要在 PostMapping 上获取这些日期。有时它带有空值,编译器会给出错误

“方法参数类型Date需要请求参数‘date_smth’ 存在但转换为 null”

对于日期,我使用 Java.util.Date 现在我尝试在 RequestParam 中使用格式化程序

@RequestParam(“date_smth_form”) @DateTimeFormat(iso=DateTimeFormat.ISO.DATE) Date date_smth

在我的实体中,我没有为此日期列应用任何配置,只是:

Private Date date_smth

如果你想问我,为什么你需要格式化程序?我希望我的日期始终为 yyyy.MM.dd 格式,没有任何时间数据或 utc 数据,只有日期。

java spring postgresql spring-boot thymeleaf
1个回答
0
投票

感谢大家(),使用 LocalDate 解决了我所有的问题,但还想补充一点,我在 @RequestParam 中的 @PostMapping 上使用 @Nullable 到我的 LocalDate 变量。以前,我不想使用 LocalDate,因为在我之前编写代码的人已经在所有存储库、所有实体、所有服务、所有控制器中的任何地方使用 Java.sql.Date。但我鼓起勇气,在 localDate 下重写了所有内容。 另外,对我来说,我需要在 @GetMapping 上将 LocalDate 值转换为 String,不知道是否可以,但它工作得很好。

© www.soinside.com 2019 - 2024. All rights reserved.