SpringMVC 默认已经提供了一些常用的类型转换器,例如客户端提交的字符串转换成int型进行参数设置。
但是,不是所有的数据类型都提供了转换器,没有提供的就需要自定义转换器,例如:日期类型的数据就需要自定义转换器。
自定义类型转换器开发步骤
1、定义转换器类实现Converter接口(org.springframework.core.convert.converter.Converter
这个包中的Converter接口)
2、在配置文件中声明转换器
3、在
package com.domain;
import org.springframework.core.convert.converter.Converter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateConvert implements Converter<String, Date> {
@Override
public Date convert(String s) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
Date date = null;
try {
date = simpleDateFormat.parse(s);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
}
<!-- 声明日期转换器-->
<bean id="dataConverter" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<list>
<bean class="com.domain.DateConvert"></bean>
</list>
</property>
</bean>
<mvc:annotation-driven conversion-service="dataConverter"></mvc:annotation-driven>
http://localhost:8080/fourteen/2018-09-12
@RequestMapping(value = "fourteen/{time}",method = RequestMethod.GET)
@ResponseBody
public void test14(@PathVariable(value = "time") Date gettime) {
System.out.println(gettime);
}