• SpringMVC参数传递之日期类型


    <a href="/demo/handle06?birthday=2019-10-08">点击测试</a>
    
    /**
    
    * http://localhost:8080/demo/handle06?birthday=2019-10-08
    
    */
    
    @RequestMapping("/handle06")
    
    public String handle06(Date birthday){
    
    
    
    
    
        return "success";
    
    }
    

    参数转换错误。报400

    自定义类型转换器:

    package com.lagou.edu.converter;
    
    import org.springframework.core.convert.converter.Converter;
    
    import java.text.ParseException;
    
    import java.text.SimpleDateFormat;
    
    import java.util.Date;
    
    /**
    
    * @author lyj
    
    * @Title: DateConverter
    
    * @ProjectName springmvc-demo
    
    * @Description: 自定义类型转换器,自定义完后需要注册
    
    * @date 2020/6/10 23:10
    
    */
    
    
    
    public class DateConverter implements Converter<String, Date> {
    
        @Override
    
        public Date convert(String s) {
    
            SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
    
            Date parse = null;
    
            try {
    
                parse = simpleDateFormat.parse(s);
    
            } catch (ParseException e) {
    
                e.printStackTrace();
    
            }
    
    
    
    
    
            return parse;
    
        }
    
    }
    

    springmvc.xml中注册

    <!--
    
            自动注册最合适的处理器映射器,处理器适配器(调用handler方法)
    
        -->
    
        <mvc:annotation-driven conversion-service="conversionServiceBean"/>
    
    
    
    <!--自定义类型转换器-->
    
        <bean id="conversionServiceBean" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
    
            <property name="converters">
    
                <set>
    
                    <bean class="com.lagou.edu.converter.DateConverter"></bean>
    
                </set>
    
            </property>
    
        </bean>
    
    

    测试:

    问题:对于同一个项目中多个日期格式的,我们可以定义多个日期转换器,但是没有必要,我们可以在DateConverter转换器中catch中捕捉异常的时候再new一个新的simpleFormat的转换对象,继续进行转换。

  • 相关阅读:
    百分点零售行业大数据解决方案
    百分点用户标签管理系统
    百分点个性化系统解决方案
    百分点数据洞察系统解决方案
    来学学数据分析吧(二)第一章 预测和关联数量特征
    来学学数据分析吧(一)
    生产者和消费者问题学习以及Java实现
    java中的双重锁定检查(Double Check Lock)
    python学习(十四)面向对象
    python学习(十二)模块
  • 原文地址:https://www.cnblogs.com/liuyj-top/p/13167571.html
Copyright © 2020-2023  润新知