gpt4 book ai didi

java - Spring MVC中init binder的目的是什么

转载 作者:IT老高 更新时间:2023-10-28 20:21:31 27 4
gpt4 key购买 nike

这是互联网上用于初始化 Binder 的代码

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

binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
}

谁能解释一下:

1) 为什么使用它,我的意思是,之前的问题是什么,如何使用该功能解决它。所以我想知道用这种日期格式解决的原始日期有什么问题?

2)从JSP表单的角度来看,如何使用这种格式,我的意思是,如果我们以文本格式输入日期,是否会转换为特定格式然后保存?

3) 它是如何应用这种格式的,我的意思是,我们是否必须在对象类中做一些事情?

最佳答案

1) 之前,您不得不求助于手动解析日期:

 public void webmethod(@RequestParam("date") String strDate) {
Date date = ... // manually parse the date
}

现在可以直接获取解析后的日期了:

 public void webmethod(@RequestParam("date") Date date) {
}

2) 如果您的 jsp 页面在 yyyy-MM-dd 表单上提供日期,您可以直接将其检索为 Date 对象在您的 Controller 中。

3) Spring 尝试对所有注册的编辑器看是否可以将值转换为对象。您不必对对象本身做任何事情,这就是它的美妙之处。

关于java - Spring MVC中init binder的目的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5211323/

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