SpringMVC中对于处理前台时间类型的学习

我们前端页面接受的数据其实都是字符串类型,但如果遇到生日这些特殊类型的数据该怎么办呢?所以这里我单独写一篇,希望能有所帮助

自定义类型转换器

  • Java中有可以将String类型转换为Date类型的类和方法,在SpringMVC中我们可以提供实现转换器接口来自定义数据转换
  • 第一步:创建MyConverter类实现Converter接口:
package com.offcn.converter;

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

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

//将String类型转换为Date类型
public class MyConverter implements Converter<String,Date> {
    @Override
    public Date convert(String s) {
        Date parse=null;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        try {
             parse = simpleDateFormat.parse(s);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return parse;
    }
}
  • 第二步:在springmvc.xml容器中添加转换器对象

在这里插入图片描述

 <bean id="cs" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <list>
                <bean class="com.offcn.converter.MyConverter"></bean>
            </list>
        </property>
    </bean>
  • 第三步:开启转换器服务,这里当项目中发生了类型转换时就会使用转换器进行转换,这里需要使用mvc标签了
<?xml version="1.0" encoding="UTF-8"?>
<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:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <context:component-scan base-package="com.offcn"></context:component-scan>

   <!-- &lt;!&ndash;处理器映射器&ndash;&gt;
    <bean id="handlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>

    &lt;!&ndash;处理器适配器&ndash;&gt;
    <bean id="adapter" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
-->
	<!--这个标签实现了上面注释的两个标签的功能-->
    <mvc:annotation-driven conversion-service="cs"></mvc:annotation-driven>

    <bean id="cs" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <list>
                <bean class="com.offcn.converter.MyConverter"></bean>
            </list>
        </property>
    </bean>
    <!--视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>
</beans>
  • 第四步:写一个简单前端代码和控制器来测试一波:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值