SpringMVC中利用@InitBinder来对表单数据进行解析绑定
来源:互联网 发布:2016家具淘宝数据 编辑:程序博客网 时间:2024/06/07 16:08
在使用SpingMVC框架的项目中,经常会遇到页面某些数据类型是Date、Integer、Double等的数据要绑定到控制器的实体,或者控制器需要接受这些数据,如果这类数据类型不做处理的话将无法绑定。
这里我们可以使用注解@InitBinder来解决这些问题,这样SpingMVC在绑定表单之前,都会先注册这些编辑器。一般会将这些方法些在BaseController中,需要进行这类转换的控制器只需继承BaseController即可。其实Spring提供了很多的实现类,如CustomDateEditor、CustomBooleanEditor、CustomNumberEditor等,基本上是够用的。
当然,我们也可以不使用他自己自带的这些编辑器类,那下面我们自己去构造几个private class DateEditor extends PropertyEditorSupport { @Override public void setAsText(String text) throws IllegalArgumentException { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = null; try { date = format.parse(text); } catch (ParseException e) { format = new SimpleDateFormat("yyyy-MM-dd"); try { date = format.parse(text); } catch (ParseException e1) { } } setValue(date); } } public class DoubleEditor extends PropertiesEditor { @Override public void setAsText(String text) throws IllegalArgumentException { if (text == null || text.equals("")) { text = "0"; } setValue(Double.parseDouble(text)); } @Override public String getAsText() { return getValue().toString(); } }
@InitBinder protected void initBinder(WebDataBinder binder) { binder.registerCustomEditor(Date.class, new DateEditor()); binder.registerCustomEditor(Double.class, new DoubleEditor()); binder.registerCustomEditor(Integer.class, new IntegerEditor()); }
public class org.springframework.beans.propertyeditors.PropertiesEditor extends java.beans.PropertyEditorSupport {
直接继承PropertyEditorSupport 也可以
让我们一起遨游在代码的海洋里!
阅读全文
0 0
- SpringMVC中利用@InitBinder来对表单数据进行解析绑定
- SpringMVC中利用@InitBinder来对页面数据进行解析绑定
- 使用@InitBinder 标签对表单数据绑定
- SpringMVC-InitBinder验证-对表单数据验证
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- spring mvc使用@InitBinder 标签对表单数据绑定
- @InitBinder对表单数据绑定解决String转换Date问题
- tar中的参数 cvf,xvf,cvzf,zxvf的区别
- Spring Boot系列(一):Spring Boot 入门篇
- 作业1
- Apply for Google FCM ( Firebase Cloud Message ) Project & Configure Android Project
- The project was not built since its build path is incomplete. Cannot find the class file for java.la
- SpringMVC中利用@InitBinder来对表单数据进行解析绑定
- linux下opencv训练xml
- 字符串算法——有重复字符的数组或字符串全排列(Permutations II)
- 第5周项目3 括号的匹配
- CheckBox与文字的间距
- Can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/
- Linux ALSA声卡驱动:ALSA架构简介
- jvm系列(十):如何优化Java GC「译」
- 冒泡排序