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>