SpringMVC 的初始化参数绑定
初始化参数绑定:日期格式
一:首先我们先做一种日期格式的绑定,配置初始化参数绑定和自定义类型转换有着异曲同工之妙
配置步骤如下:
1.我们首先配置applicationContext.xml,进行扫描器的配置
2.其次我们定义它的处理器,以及进行方法的绑定(@InitBinder)
3.单个日期格式进行测试:
<form action="${pageContext.request.contextPath }/first.do" method="post"> <h1>参数绑定转换器</h1> 出生日期:<input name="birthday" value="${birthday}"/><br/><br/> 年龄:<input name="age" value="${age }"/><br/><br/> <input type="submit" value="注册"/> </form>
二:多种日期格式
1.首先我们需要继承一个编辑器(PropertiesEditor)
重写它的setAsText方法
以便后续给日期对象的赋值
public class MyDateEditor extends PropertiesEditor{ @Override public void setAsText(String source) throws IllegalArgumentException { SimpleDateFormat sdf=getDate(source); try { setValue(sdf.parseObject(source)); } catch (ParseException e) { e.printStackTrace(); } } private SimpleDateFormat getDate(String source) { SimpleDateFormat sdf=null; if (Pattern.matches("^\\d{4}-\\d{2}-\\d{2}$", source)) { sdf=new SimpleDateFormat("yyyy-MM-dd"); }else if (Pattern.matches("^\\d{4}/\\d{2}/\\d{2}$", source)) { sdf=new SimpleDateFormat("yyyy/MM/dd"); }else if (Pattern.matches("^\\d{4}\\d{2}\\d{2}$", source)) { sdf=new SimpleDateFormat("yyyyMMdd"); }else { throw new TypeMismatchException("", Date.class); } return sdf; } }
2.配置处理器
3.进行多种日期格式的测试:
现在属于自己的不一定永远就属于你,初始化参数也会随着绑定不断改变。
---- 告诫自己