gpt4 book ai didi

java - Spring自动类型转换不适用于字符串到日期

转载 作者:行者123 更新时间:2023-11-30 07:34:15 26 4
gpt4 key购买 nike

在 web mvc 中的请求处理程序方法中,我做了如下操作:

@RequestMapping(value = "/{day}", method = RequestMethod.GET)
@ResponseBody
public String dateValidation(
@PathVariable @DateTimeFormat(pattern = "dd-mm-yyyy") Date day) {
System.out.println("date is " + day);
return "date";
}

根据 spring 文档所述 here

它会自动将String转换为Date类型。

为什么我需要在 Controller 中添加 Initbinder

@InitBinder
public void initBinder(WebDataBinder binder) {
// Although spring says it is automatic
binder.addCustomFormatter(new DateFormatter("dd-mm-yyyy"));
}

我错过了什么吗?

谢谢

最佳答案

因为您正在自定义模式中传递日期,所以 Spring 不知道如何将其解析为正确的日期对象。这就是为什么您需要添加自定义格式化程序,Spring 将使用它来将您的模式转换为 Date 对象。

关于java - Spring自动类型转换不适用于字符串到日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35623750/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com