`

springMvc--接受日期类型参数处理

 
阅读更多
  • 1.controller
  • /**
         * 接收日期类型参数
         *     注意:
         *         springmvc 在接收日期类型参数时,如不做特殊处理 会出现400语法格式错误
         *  解决办法
         *      1.全局日期处理
         * 
         */
        
        @RequestMapping("/test")
        public String test(Date birthday){
            System.out.println(birthday);
            return "index";
        }


    [list]
  • 2.自定义类型转换规则
  • SpringMvc提供了Converter接口,它支持从一个Object转换为另一个Object
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    import org.springframework.core.convert.converter.Converter;
    /**
     * 全局日期处理类
     * Convert<T,S>
     *         泛型T:代表客户端提交的参数 String
     *         泛型S:通过convert转换的类型
       
     */
    
    public class DateConvert implements Converter<String, Date> {
    
        @Override
        public Date convert(String stringDate) {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
            try {
                return simpleDateFormat.parse(stringDate);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return null;
        }
    
    }

    [/list]

    • 3.注册自定义的类型转换类
    • 在sping-mvc.xml配置文件中,
      <!-- 第三步:注册处理器映射器/处理器适配器 ,添加conversion-service属性-->
          <mvc:annotation-driven conversion-service="conversionService"/>
        
          <!-- 第二步: 创建convertion-Service ,并注入dateConvert-->
          <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
              <property name="converters">
                  <set>
                      <ref bean="dateConvert"/>
                  </set>
              </property>
          </bean>
          <!-- 第一步:  创建自定义日期转换规则 -->  
          <bean id="dateConvert" class="zpark.convert.DateConvert"/>


    • 4.地址栏访问

    • http://localhost:9999/date/test2?birthday=1990-01-02


    http://www.cnblogs.com/liuconglin/p/5777879.html
    分享到:
    评论

    相关推荐

      springmvc-demo05-数据绑定(接受参数).zip

      在这个名为"springmvc-demo05-数据绑定(接受参数)"的项目中,我们将深入探讨Spring MVC如何实现这一特性。 1. **数据绑定的基本概念** 数据绑定是将用户输入或者HTTP请求参数自动映射到Java对象的属性上的过程。...

      SpringMVC数据类型转换超详细介绍

      1. **转换范围有限**:`PropertyEditor`仅能处理字符串到对象的转换,无法满足复杂的数据类型转换需求,例如常见的长整型时间戳到日期类型(`Long`到`Date`)的转换。 2. **线程安全性问题**:由于`PropertyEditor`是...

      springmvc王磊文档2

      - 对于特殊类型的数据绑定需求,如日期类型,可以自定义实现`Converter`接口来实现特定类型的转换。例如,创建一个`Converter, Date&gt;`实现类,将字符串类型的日期转换为Java中的`Date`对象。 - 将自定义的转换器...

      专题资料(2021-2022年)SpringMVC数据类型转换要点.doc

      3. `setValue(Object)`接受任何类型,需要开发者自行判断类型兼容性。 4. 验证需手动实现,而Spring3之后支持注解式验证。 5. 在SpEL表达式和DataBinder中,转换仅限于`String`到`Object`。 6. 缺乏细粒度的转换和...

      Springmvc中文手册下载

      Spring MVC 提供了很好的支持来创建 RESTful 飓风风格的 API,可以通过 `@RequestMapping` 注解的 `produces` 和 `consumes` 属性控制响应和接受的媒体类型。 11. **上传和下载** Spring MVC 提供了处理文件上传...

      springmvc.pdf

      - **生产者/消费者限定**:通过 `produces` 和 `consumes` 属性指定控制器接受和返回的内容类型。 #### 九、Spring MVC 强大的数据绑定与验证 1. **数据绑定**:Spring MVC 可以自动将 HTTP 请求中的参数绑定到...

      Javaee课程实验

      控制器方法可以接受User对象作为参数: ```java @RequestMapping(value = "/register") public String register(@ModelAttribute User user) { // 业务逻辑 return "success"; } ``` #### 复杂数据绑定 - ...

      Spring MVC请求参数接收的全面总结教程

      RequestParamMethodArgumentResolver用来解析处理使用了@RequestParam注解的参数、MultipartFile类型参数和Simple类型(如long、int)参数。RequestResponseBodyMethodProcessor用来解析处理@RequestBody注解的参数...

    Global site tag (gtag.js) - Google Analytics