`

spring mvc 表单映射date类型字段的问题

阅读更多
在mvc中如果表单属性的类型是日期型时,从页面绑定字符串数据会出错
Failed to convert property value of type [java.lang.String] to required type [java.util.Date] for property 'expert.birthdate'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [java.util.Date] for property 'birthdate': no matching editors or conversion strategy found

解决方法
1.控制器继承 extends SimpleFormController
2.重写initBinder方法

@InitBinder
protected void initBinder(HttpServletRequest request,
            ServletRequestDataBinder binder) throws Exception { 
      DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      CustomDateEditor dateEditor = new CustomDateEditor(fmt, true);
      binder.registerCustomEditor(Date.class, dateEditor);
      super.initBinder(request, binder); 
}

注意SimpleDateFormat日期格式与页面日期格式要一致!
分享到:
评论

相关推荐

    struts的form不能初始化java.util.Date类型

    然而,有一个常见的问题出现在尝试初始化`java.util.Date`类型的字段时,即“Struts的form不能初始化java.util.Date类型”。这个问题通常是由于日期对象的序列化和反序列化机制导致的,以及Struts默认的数据绑定策略...

    java多文件上传,表单提交,直接运行

    本项目采用的是Spring MVC、Hibernate和Spring这三大流行框架的集成,来实现这一功能。Spring MVC负责处理HTTP请求,Hibernate用于数据库操作,而Spring则提供了依赖注入和事务管理等功能。 首先,让我们详细了解多...

    spring+ibase实现文件上传下载

    你需要在Spring MVC的Controller中定义一个方法,该方法的参数类型为MultipartFile,然后你可以检查文件大小、类型,甚至进行预处理,如重命名或转换格式。 例如: ```java @PostMapping("/upload") public String ...

    java 页面上有ENCTYPE="multipart/form-data" 时action方法或者控制层用request.getParameter()获取不到值的方法 ?

    然而,这种编码方式下,常规的`request.getParameter()`方法无法正确地获取到表单中的文本字段值,因为这些值被封装在了请求的多部分结构中。以下是一些解决这个问题的方法: 1. **使用Apache Commons FileUpload库...

    spring-data-jpa-reference1.3.pdf

    - **Spring MVC中的域类Web绑定**: 可以使用Spring Data JPA中的`SimpleJpaRepository`来实现自动的Web绑定功能,方便进行表单验证和数据填充。 - **Web分页**: 支持通过`Pageable`接口来进行分页查询。 - **...

    EnableWebMvc.docx

    在类型转换方面,`@EnableWebMvc`默认提供了对`Number`和`Date`类型的支持。它使用`ConversionService`配合JavaBeanPropertyEditors进行数据绑定。这意味着你可以使用`@NumberFormat`和`@DateTimeFormat`注解来格式...

    springmvc中进行数据保存以及日期参数的保存过程解析

    当在HTML表单中使用`<input type="text" name="date">`或`<input type="date" name="date">`传递日期时,Spring MVC可以通过`@InitBinder`注解和`CustomDateEditor`实现日期类型的自动转换。例如: ```java @...

    Struts2+Spring2+Hibernate3 web应用示例

    Struts2、Spring2以及Hibernate3是三个非常流行的Java技术栈中的框架,它们各自解决了Web应用开发过程中的不同问题,而当这三个框架整合在一起时,则能够提供更为强大的功能和支持。 - **Struts2**:一个基于MVC...

    java map转Multipart/form-data类型body实例

    通常在服务器端(比如使用Spring MVC框架),我们可以使用注解(`@RequestParam`)来映射请求参数。如果是原始的`HttpServletRequest`对象,可以通过`request.getParameter()`方法获取文本字段的值,而文件字段则...

    玩转spring boot 结合jQuery和AngularJs(3)

    控制器是Spring MVC的核心组件,它们将前端请求映射到后端逻辑。 至于jQuery和AngularJS,它们都是JavaScript库,用于增强Web页面的用户体验。jQuery简化了DOM操作、事件处理、动画效果和AJAX交互。AngularJS是一个...

    华为面试题

    文件上传和下载通常涉及Servlet、IO流、MultipartFile(在Spring MVC中)等技术。项目中实现时,需要处理文件的临时存储、文件大小限制、错误处理和安全问题。 【Spring框架】 Spring是企业级应用的核心框架,它的...

    ssh对应的配置文件(xml)信息详解[归类].pdf

    在Java Web开发中,SSH经常指的是Struts、Spring和Hibernate这三个框架的组合,它们分别是MVC模式中的视图、业务逻辑和数据持久化层的代表。然而,这里的"ssh对应的配置文件(xml)信息详解"似乎主要讨论的是Struts1...

    11-Java软件工程师面试题.doc

    这个问题涉及到Java的变量作用域和类型转换。由于`i`未初始化就使用,程序会抛出`NullPointerException`。因此,所有选项都不是正确的。 6. **程序输出"Not Greater than 10"的值**: 由于`i`未初始化,程序同样...

    java必备知识点大全.pdf

    时间类型转换:在Java中,处理时间类型通常会用到Date、Calendar、LocalDate等类,并且需要进行相应的类型转换。 阶乘:一个正整数的阶乘是所有小于及等于该数的正整数的积。 UE和UI的区别:UE是指用户体验(User ...

    java软件工程师面试基本题.docx

    **SpringMVC**是一个基于模型-视图-控制器(MVC)设计模式的轻量级Web框架。它简化了Web应用的开发流程,使得开发者能够更加专注于业务逻辑的编写而非框架本身。SpringMVC的核心组件是`DispatcherServlet`,它负责...

    struts 2 s标签 struts 2 s标签

    这些只是Struts 2 S标签库中的一部分,实际上还有许多其他标签,如`s:textfield`(文本字段)、`s:textarea`(文本区域)、`s:submit`(提交按钮)等等,它们极大地简化了MVC模式中的视图层开发。通过合理使用这些...

    JavaEE学习实战笔记心得

    - **时间格式化**:使用SQL语句中的`DATE_FORMAT`函数来格式化日期和时间字段。 - **图片存储**:可以通过将图片转换为BLOB类型来存储到MySQL数据库中。 #### HTML/CSS - **文件上传**:使用HTML表单的`enctype=...

    自整理Java关于基础和框架的面试题

    - 第二范式:基于第一范式,每个非键字段完全依赖于整个键。 - 第三范式:基于第二范式,消除传递依赖。 ##### 视图概述 - 视图是从一个或多个表中派生出来的虚拟表。 ##### 存储过程概述 - 存储过程是预先编译好...

    -app:发布消息,各种通知

    这涉及到数据模型的设计,比如创建一个 `Message` 类,它包含`标题`、`内容`、`发布者`、`发布时间`等属性,以及一个`类别`字段用于区分不同的通知类型。同时,我们还需要一个`Category`类来存储和管理各类别信息。 ...

Global site tag (gtag.js) - Google Analytics