前端傳字符串日期,後端需轉 `java.util.Date` 入庫;查詢時 `Date` 轉字符串顯示。不想寫兩個 `Converter`。
public class MyForm {
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday; // 前端 "2024-01-15" 自動綁定
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
}
SpringMVC 默認註冊 `FormattingConversionService`,識別 `@DateTimeFormat`/`@NumberFormat` 自動雙向轉換。
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addFormatters(FormatterRegistry registry) {
registry.addFormatterForFieldType(Date.class, new DateFormatter("yyyy-MM-dd"));
}
}