美文网首页
对请求中的日期格式进行转换

对请求中的日期格式进行转换

作者: 青春代言人 | 来源:发表于2019-03-04 22:17 被阅读0次

    概述:

    由于SpringMVC框架只能接收指定格式的日期(yyyy-MM-dd),所有在SpringMVC获取日期之前对请求中的日期格式进行转换,方式如下:

    方式一:创建数据类型转换器;

        spring提供了好多转换器,这也正是SpringMVC可以自动对请求中的参数进行封装的原因,由于日期的格式太多所以spring没有提供日期类型的转换器,不过spring提供了一个供使用者创建类型转换器的接口,我们可以通过该接口创建可以转换为指定格式日期的转换器;

        步骤:

            1)、实现Converter<S,T>接口;

            2)、重写convert方法;

            3)、在convert方法中编写转换流程;

        代码截图:

    创建类型转化器

         4)、将自定义的类型转换器添加到Spring中的转换器工厂;

            代码截图:

    将自定义的类型转换器添加到Spring中的类型转换器工厂

        5)、设置conversion-service属性;

           代码截图:   

    conversion-service属性设置

    方式二:注解

    在实体bean日期属性上添加@DateTimeFormat(pattern = "yyyy-MM-dd") 注解;

    方式三:

       1)、在Controller层添加一个方法,方法参数为WebDataBinder类型;

       2)、在方法上添加InitBinder注解;

       3)、编写方法中的业务逻辑;

                代码截图:

    方法代码

                 方法参数详解:

                        WebDataBinder:该对象中封装的是请求中的参数;

                        Date.class:该参数为目标类型;

                        new PropertiesEditor:该匿名内部类为类型转换器;

                        setAsText方法:该方法为对转换流程的封装;

                        setAsText方法参数:请求中需要转换的参数;

    三种方式比较:

        方式一:程序中的任何部分都可以使用;(推荐使用)

        方式二:只有添加该注解的属性可以完成数据类型的转换;

        方式三:只有该方法所在的Controller可以使用;

                        

                        

    相关文章

      网友评论

          本文标题:对请求中的日期格式进行转换

          本文链接:https://www.haomeiwen.com/subject/ripwuqtx.html