Formatter类型格式化,也可用于进行类型转换
- 自定义类型转换器:
public class MyDateFormatter implements Formatter<Date> {
public Date parse(String text, Locale locale) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.parse(text);
}
public String print(Date object, Locale locale) {
return null;
}
}
- 定义一个类实现
Formatter<T>
接口,T为转换后的类型。- 重写parse方法,参数text为接收的数据,返回值为转换后的数据.
- 与Converter不同的是这里只能固定的对String类型进行转化。一般在web应用中这个更实用。
- 在配置文件中配置:
<mvc:annotation-driven conversion-service="myDateFormatter"/>
<bean id="myDateFormatter" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="formatters">
<set>
<bean class="com.test.common.MyDateFormatter"></bean>
</set>
</property>
</bean>
以后后台就可以直接接受格式为yyyy-MM-dd 的Date类型参数。
前台传过来的是String类型,会自动转换成Date类型。