gpt4 book ai didi

java - 使用 Spring 将空字符串转换为空日期对象

转载 作者:IT老高 更新时间:2023-10-28 13:45:07 24 4
gpt4 key购买 nike

我有一个表单域,应该转换为 Date 对象,如下:

<form:input path="date" />

但是当这个字段为空时我想得到一个空值,而不是我收到的:

Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'date';
org.springframework.core.convert.ConversionFailedException: Unable to convert value "" from type 'java.lang.String' to type 'java.util.Date';

有没有一种简单的方法来指示应该将空字符串转换为 null?还是我应该编写自己的 PropertyEditor

谢谢!

最佳答案

Spring 提供了一个名为 CustomDateEditor 的 PropertyEditor您可以将其配置为将空字符串转换为空值。您通常必须在 Controller 的 @InitBinder 方法中注册它:

@InitBinder
public void initBinder(WebDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
dateFormat.setLenient(false);

// true passed to CustomDateEditor constructor means convert empty String to null
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
}

关于java - 使用 Spring 将空字符串转换为空日期对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4806033/

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