public class DateInject extends PropertyEditorSupport {
// 可以自定义设置格式化形式
private String format;
@Override
public void setAsText(String text) throws IllegalArgumentException {
format = format == null ? "yyyy-MM-dd" : format;
System.out.println(format);
SimpleDateFormat sdf = new SimpleDateFormat(format);
try {
setValue(sdf.parse(text));
} catch (ParseException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
public String getFormat() {
return format;
}
public void setFormat(String format) {
this.format = format;
}
}
xml配置文件
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <!-- spring 的属性编辑器,用于数据转换 ,用于注入自定义的数据类型 --> <bean id="dateFormat" class="org.springframework.beans.factory.config.CustomEditorConfigurer" > <property name="customEditors"> <map> <entry key="java.util.Date"> <bean class="com.spring.test.DateInject"> <!-- 可以自定义设置格式化的形式 <property name="format" value="yyyy-MM-dd"></property> --> </bean> </entry> </map> </property> </bean>