假设我有一个列出表中对象的页面,我需要放置一个表单来过滤表.过滤器作为Ajax GET发送到如下URL:http://foo.com/system/controller/action?page = 1&prop1 = x&prop2 = y&prop3 = z
而不是在我的控制器上有很多参数,如:
@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
@RequestParam(value = "page", required = false) int page,
@RequestParam(value = "prop1", required = false) String prop1,
@RequestParam(value = "prop2", required = false) String prop2,
@RequestParam(value = "prop3", required = false) String prop3) { ... }
Run Code Online (Sandbox Code Playgroud)
假设我有MyObject:
public class MyObject {
private String prop1;
private String prop2;
private String prop3;
//Getters and setters
...
}
Run Code Online (Sandbox Code Playgroud)
我想做的事情如下:
@RequestMapping(value = "/action") …Run Code Online (Sandbox Code Playgroud) 这是针对init binder的互联网代码
@InitBinder
public void initBinder(WebDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
}
Run Code Online (Sandbox Code Playgroud)
谁能解释一下:
1)为什么使用它,我的意思是,之前的问题是什么,它是如何通过该功能解决的.所以我想知道这个日期格式解决的原始日期有什么问题?
2)如何从JSP表单的角度使用这种格式,我的意思是,如果我们以文本格式输入日期,它是否会转换为特定格式然后保存它?
3)它是如何应用格式化的,我的意思是,我们必须在对象类中做一些事情吗?