自定义类型转换器的步骤:
1、定义转换器类实现Converter接口
2、在配置文件中声明转换器
3、在<annotation-driven>中引用转换器
首先建一个包,我们就叫converter, 然后在里面创建一个java文件 DateConverter.java,假如我们要的日期格式为yy-MM-dd的。
package cn.converter;
import org.springframework.core.convert.converter.Converter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateConverter implements Converter<String, Date>{
@Override
public Date convert(String dateStr) {
SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd");
Date date = null;
try {
date = sdf.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
}
之后就去配置文件 springmvc-servlet.xml 中声明
<!-- 声明转换器-->
<bean id="ConversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<list>
<bean class="cn.converter.DateConverter"/>
</list>
</property>
</bean>
最后就是在<annotation-driven>中引用该转换器
<mvc:annotation-driven conversion-service="ConversionService"/>
在controller文件中定义一个测试类
//自定义转换器
@RequestMapping("/test13")
@ResponseBody
public void show13(Date date){
System.out.println(date);
}
测试一下?
|