我希望我的controllers
根據標準格式解析RequestParams
和PathVariables
中的日期。Spring MVC set global DateTimeFormat
是否可以設置應用程序範圍內的@DateTimeFormat
而不分別註釋每個@RequestParam
?
我希望我的controllers
根據標準格式解析RequestParams
和PathVariables
中的日期。Spring MVC set global DateTimeFormat
是否可以設置應用程序範圍內的@DateTimeFormat
而不分別註釋每個@RequestParam
?
您可以在控制器級別執行此操作。在您的控制器中添加@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));
}
Spring AOP可能會有這種可能,但如果請求中的日期不同,如何告訴代碼如何。但檢查以下鏈接瞭解更多脫軌:原題的
不是一部分,但是,有沒有辦法重寫此單個請求參數?當我使用InitBinder時,似乎DateTimeFormat會被忽略。 – Can
我看不出有辦法做到這一點。可能有辦法,但我不知道這一點。 –