在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日期格式与页面日期格式要一致!
分享到:
相关推荐
然而,有一个常见的问题出现在尝试初始化`java.util.Date`类型的字段时,即“Struts的form不能初始化java.util.Date类型”。这个问题通常是由于日期对象的序列化和反序列化机制导致的,以及Struts默认的数据绑定策略...
本项目采用的是Spring MVC、Hibernate和Spring这三大流行框架的集成,来实现这一功能。Spring MVC负责处理HTTP请求,Hibernate用于数据库操作,而Spring则提供了依赖注入和事务管理等功能。 首先,让我们详细了解多...
你需要在Spring MVC的Controller中定义一个方法,该方法的参数类型为MultipartFile,然后你可以检查文件大小、类型,甚至进行预处理,如重命名或转换格式。 例如: ```java @PostMapping("/upload") public String ...
- **Spring MVC中的域类Web绑定**: 可以使用Spring Data JPA中的`SimpleJpaRepository`来实现自动的Web绑定功能,方便进行表单验证和数据填充。 - **Web分页**: 支持通过`Pageable`接口来进行分页查询。 - **...
在类型转换方面,`@EnableWebMvc`默认提供了对`Number`和`Date`类型的支持。它使用`ConversionService`配合JavaBeanPropertyEditors进行数据绑定。这意味着你可以使用`@NumberFormat`和`@DateTimeFormat`注解来格式...
当在HTML表单中使用`<input type="text" name="date">`或`<input type="date" name="date">`传递日期时,Spring MVC可以通过`@InitBinder`注解和`CustomDateEditor`实现日期类型的自动转换。例如: ```java @...
Struts2、Spring2以及Hibernate3是三个非常流行的Java技术栈中的框架,它们各自解决了Web应用开发过程中的不同问题,而当这三个框架整合在一起时,则能够提供更为强大的功能和支持。 - **Struts2**:一个基于MVC...
控制器是Spring MVC的核心组件,它们将前端请求映射到后端逻辑。 至于jQuery和AngularJS,它们都是JavaScript库,用于增强Web页面的用户体验。jQuery简化了DOM操作、事件处理、动画效果和AJAX交互。AngularJS是一个...
文件上传和下载通常涉及Servlet、IO流、MultipartFile(在Spring MVC中)等技术。项目中实现时,需要处理文件的临时存储、文件大小限制、错误处理和安全问题。 【Spring框架】 Spring是企业级应用的核心框架,它的...
在Java Web开发中,SSH经常指的是Struts、Spring和Hibernate这三个框架的组合,它们分别是MVC模式中的视图、业务逻辑和数据持久化层的代表。然而,这里的"ssh对应的配置文件(xml)信息详解"似乎主要讨论的是Struts1...
这个问题涉及到Java的变量作用域和类型转换。由于`i`未初始化就使用,程序会抛出`NullPointerException`。因此,所有选项都不是正确的。 6. **程序输出"Not Greater than 10"的值**: 由于`i`未初始化,程序同样...
时间类型转换:在Java中,处理时间类型通常会用到Date、Calendar、LocalDate等类,并且需要进行相应的类型转换。 阶乘:一个正整数的阶乘是所有小于及等于该数的正整数的积。 UE和UI的区别:UE是指用户体验(User ...
**SpringMVC**是一个基于模型-视图-控制器(MVC)设计模式的轻量级Web框架。它简化了Web应用的开发流程,使得开发者能够更加专注于业务逻辑的编写而非框架本身。SpringMVC的核心组件是`DispatcherServlet`,它负责...
这些只是Struts 2 S标签库中的一部分,实际上还有许多其他标签,如`s:textfield`(文本字段)、`s:textarea`(文本区域)、`s:submit`(提交按钮)等等,它们极大地简化了MVC模式中的视图层开发。通过合理使用这些...
- 第二范式:基于第一范式,每个非键字段完全依赖于整个键。 - 第三范式:基于第二范式,消除传递依赖。 ##### 视图概述 - 视图是从一个或多个表中派生出来的虚拟表。 ##### 存储过程概述 - 存储过程是预先编译好...
这涉及到数据模型的设计,比如创建一个 `Message` 类,它包含`标题`、`内容`、`发布者`、`发布时间`等属性,以及一个`类别`字段用于区分不同的通知类型。同时,我们还需要一个`Category`类来存储和管理各类别信息。 ...
Seam - 语境相关的组件[满江红20071230]............................................................................................................................ 1 Java EE 框架...........................