SpringMVC中的参数绑定的类型转换器

解决的问题: 解决参数绑定中需要将当前传来的String类型转为其他类型。

常用的类型转换:将String类型转为Date类型的类型转换器。

1.前台传到Controller中的参数只能进行一些简单的自动类型转换,但不能解决将Date类型

在这里插入图片描述
显而易见,其中的生日为Date类型,但在点击保存发送给请求后,请求参数中为String类型,而且Controller层中参数列表中得到的也是String类型。
在这里插入图片描述
因为String类型不能自动转为Date类型,因此需要类型转换器。

解决步骤:
1.创建自定义类型转换器: 实现 Converter<String, Date> 接口。

 public class StrConverDate implements Converter<String,Date> {
    @Override
   public Date convert(String s) {

    //自定义 日期格式为 yyyy-MM-dd HH:mm 对应生日的日期格式。
   SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm");

   Date parse=null;
   try {
         //将字符串解析为Date类型
         parse= format.parse(s);
         
    } catch (ParseException e) {
        e.printStackTrace();
    }
    return parse;
}
}

2.在springmvc.xml配置文件中配置类型转换器

 <!--配置 类型转换器-->

<bean id="conversionServiceFactoryBean" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">

    <property name="converters">
        <list>
            <bean class="com.conver.StrConverDate"></bean>   //自己创建的类型转换器的所在包
        </list>
    </property>
    
</bean>       

3.此时类型转换器创建和配置完成,不需要使用,即可实现String类型转为Date类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值