SpingMvc配置string类型自动转换date日期类型

一、需求说明

web开发时,当jsp页面中含有日期组件或是日期格式的字符串要将其传入springmvc的controller层,并持久化到数据库。而数据库中为date类型。此时就需要用SimpleDateFormat.parse()方法进行转换,但每次需要转换时都要写该方法,使得代码重复率高。

二、解决办法

(1)原理:springmvc的controller层由前端控制器,处理映射器,处理适配器,视图解析器构成,在初始化时我们利用注解驱动的方法配置最新版的处理器映射器和处理器适配器。只需自定义一个转换类,并将其配置到xml文件中,再将其加入到注解驱动中,则不用每次都手动书写转换方法。 (2)步骤:
①新建转化类:
新建converter包,在converter包中新建类(类名随意)如下图所示 这里写图片描述

②转化类
转换类代码如下所示

    public class CustomGlobalStrToDateConverter implements Converter<String, Date> {

    @Override
    public Date convert(String source) {
        try {
            Date date = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(source);
            return date;
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }

}

③springmvc.xml中配置上述的类

<!-- 配置自定义转换器 
    注意: 一定要将自定义的转换器配置到注解驱动上
    -->
    <bean id="conversionService"
        class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <set>
                <!-- 指定自定义转换器的全路径名称 -->
                <bean class="cn.itheima.controller.converter.CustomGlobalStrToDateConverter"/>
            </set>
        </property>
    </bean>

④将自定义的转换器配置到注解驱动上

<mvc:annotation-driven conversion-service="conversionService"></mvc:annotation-driven>

总结

通过上述配置,即可完成string类型和date类型的自动转换

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值