spring已经为我们提供了基本使用的类型转换器。
1.自定义类型转换器有什么作用?
Springmvc框架提供了自定义类型转换功能,比如当你在页面提交的数据格式与标准格式有差异,就会发生错误,如下所示:
2.自定义类型转换类实现
2.1在与controller同级目录下创建一个包,名为util,并在该包下创建StringToDate类,代码如下所示:(继承Convert<S,T>并重写方法)
package com.util; import org.springframework.core.convert.converter.Converter; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class StirngToDate implements Converter<String,Date> {
Date parsm; @Override public Date convert(String s) { if(s == null){ throw new RuntimeException("请您输入数据"); } DateFormat df = new SimpleDateFormat("yyyy-mm-dd"); try { parsm = df.parse(s); } catch (Exception e) { throw new RuntimeException("类型转换失败"); } return parsm; } }
2.2在springmvc下配置类型转换器,添加代码如下:
<bean name="conversion" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters"> <set> <bean class="com.util.StirngToDate"/> </set> </property> </bean> <!-- 开启MVC注解驱动 --> <mvc:annotation-driven conversion-service="conversion"/>
3.重新执行,验证成功!