Spring mvcカスタム変換器

1735 ワード

 <!--            -->
<mvc:annotation-driven  conversion-service="conversionService" />
<!--            -->
    <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <list>
                <bean class="com.my.controller.converter.IntConverter" />
                <bean class="com.my.controller.converter.DateConverter" />
            </list>
        </property>
    </bean>
import org.springframework.core.convert.converter.Converter;

public class IntConverter implements Converter<String, Integer> {

    @Override
    public Integer convert(String text) {
        if (text == null || "".equals(text)) {
            return 0;
        } else {
            try {
                Integer value = Integer.parseInt(text);
                return value;
            } catch (Exception e) {
                return 0;
            }
        }
    }

}
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.core.convert.converter.Converter;

public class DateConverter implements Converter<String, Date> {

    @Override
    public Date convert(String text) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        dateFormat.setLenient(false);
        try {
            return dateFormat.parse(text);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return null;
    }

}