package com.mj.converter; import org.springframework.core.convert.converter.Converter; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; //先创建 //不要倒错包 是有两个泛型的 public class DateConverter implements Converter<String,Date> { //定义 private List<String> formats; public void setFormats(List<String> formats) { this.formats = formats; } @Override public Date convert(String s) { for (String format : formats) { try { SimpleDateFormat fmt = new SimpleDateFormat(format); return fmt.parse(s); } catch (ParseException e) { // e.printStackTrace(); } } return null; } }
xml配置如下
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="person" class="com.mj.domain.Person" p:birthday="09_10_2111"/> <!-- 配置FactoryBean --> <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters"> <set> <bean class="com.mj.converter.DateConverter"> <property name="formats"> <list> <value>yyyy-MM-dd</value> <value>MM_dd_yyyy</value> </list> </property> </bean> </set> </property> </bean> </beans>