public class User {
private String name;
private Date birthday;
//getter and setter...
}
public class IndexAction2 extends ActionSupport{
//private Date date;
private User u;
public User getU() {
return u;
}
public void setU(User u) {
this.u = u;
}
public String userAdd(){
HttpServletRequest request = ServletActionContext.getRequest();
String birStr=request.getParameter("birthday");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
u.setBirthday(sdf.parse(birStr));
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(u.getBirthday());
return "suc";
}
public String userAdd1(){
System.out.println("date::"+date);
u.setBirthday(date);
System.out.println(u.getBirthday());
return "suc";
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
}
jsp:
<form action="path/path!userAdd1.action" name="myform" method="post">
姓名:<input type="text" name="u.name"><br>
生日:<input type="text" name="date">eg: 1986-06-15 00:00:00<br>
<a href="path/path.action">路径问题说明</a><br>
<button type="submit">OK</button><br>
</form>
若在jsp中想把表单的值直接传给对应的实体类,如果存在事件类型,那么u.birthday传入的值会出错,报类型转换异常。struts2的类型转换机制,只是可以把表单的值转换为对应的action中定义的属性,如action中定义private Date date;在表单上填入日期的时候用input type="text" name="date">,这样就可以自动转换。
如果不定义属性,想直接用实体类接收,那必须自己用SimpleDateFormat转换setbirthday()就好了。
分享到:
相关推荐
在编程时,我们常常需要将一个数据类型转换为另一个数据类型,以满足特定的程序需求。Struts1框架,作为一个经典的MVC(Model-View-Controller)框架,在处理用户输入与模型数据间的转换时,确实存在一定的局限性,...
Struts2框架提供了一种机制,即类型转换器(Type Converter),用于自动将请求参数转化为预期的数据类型。 在Struts2中,实现类型转换主要有两种方式: 1. 使用内置的类型转换器:Struts2已经内置了一些常见的类型...
在实际开发中,我们经常遇到需要将HTTP请求参数转换为Java对象的场景,这就是数据类型转换。本练习主要关注如何在Struts2中实现自定义的数据类型转换,以满足特定业务需求。 首先,我们需要了解Struts2的数据转换...
在Struts2中,数据类型转换器是一个关键组件,它负责将HTTP请求参数转换为Action类中的属性类型,以供业务逻辑处理。这篇博客“Struts2数据类型转换器”可能深入探讨了这个主题,虽然具体的细节无法在此给出,但我们...
类型转换错误通常发生在Action类中的属性与用户提交的数据类型不匹配时。例如,如果你有一个`java.util.Date`类型的属性,但用户输入了一个无效的日期字符串,Struts2在尝试将字符串转换为日期时会抛出异常。 2. *...
类型转换在处理用户提交的数据时非常关键,它允许Struts2自动将请求参数转换为Java对象的属性。 在Struts2中,类型转换主要由`Converter`接口实现,它的主要职责是将HTTP请求参数转换为Action类的属性。当我们在...
当用户通过表单提交数据时,Struts2会自动寻找合适的转换器来将请求参数转换为Action类的属性。这个过程是通过`ValueStack`和`ConversionService`接口来完成的。如果系统找不到内置的转换器,那么我们就可以提供一个...
在Struts2框架中,自定义类型转换器是开发者为了满足特定需求,对框架默认的类型转换机制进行扩展的一种方式。Struts2允许我们创建自己的转换器类来处理输入数据,确保模型对象的属性能够正确地被转换为预期的数据...
- 如果请求参数与Action类属性的数据类型不匹配,Struts2会自动调用类型转换器进行转换。 - 如果转换过程中发生错误(例如,无法将字符串转换为整数),则会触发`conversionError`事件。 - `conversionError`会...
在Struts2中,类型转换是核心功能之一,允许框架自动将HTTP请求参数转换为Action类中的相应属性。这极大地方便了开发过程,减少了手动进行数据验证和类型转换的工作。 类型转换器(Converter)在Struts2中扮演着...
类型转换是Struts2框架中一个重要的特性,它允许我们把前端表单提交的数据自动转换为后端Java对象的属性。在这个案例中,我们将深入探讨Struts2中的ConverterType,以及如何实现一个自定义的类型转换器来处理坐标(x...
在Struts2中,当用户提交表单时,框架会自动尝试将请求参数转换为Action类中相应字段的类型。然而,有时默认的转换可能无法满足需求,这时就需要自定义类型转换。自定义类型转换可以通过实现Converter接口或者继承...
当表单提交的数据与Action类中的字段类型匹配时,Struts2会自动进行类型转换。 如果需要处理更复杂的转换,例如自定义类型或特殊格式的日期,开发者可以自定义类型转换器。实现自定义类型转换器有两种主要方式:一...
Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括类型转换、拦截器和校验机制。本文将深入探讨这些关键知识点,并通过实际例子来帮助你理解它们的工作原理和应用。 首先,我们来看看**类型转换...
1. 自动类型转换:当用户提交表单数据时,Struts2会自动尝试将请求参数与Action类的属性进行匹配,并使用内置的Converter进行类型转换。例如,一个名为`age`的字符串参数会被尝试转换为`Integer`类型。 2. 自定义...
**类型转换**是Struts2处理请求参数与Action类属性之间数据类型不匹配的过程。当用户通过表单提交请求时,Struts2会自动尝试将请求参数转换为Action类中相应字段的类型。这一过程遵循以下步骤: 1. 用户发起请求,...
当我们提交表单时,SpringMVC框架可能会出现类型转换错误的问题。 错误信息 在控制台中,我们可能会看到以下错误信息: Field error in object 'user' on field 'birthday': rejected value [2013-06-24]; codes ...
在SpringMVC中,数据绑定和数据类型转换是两个关键的概念,它们对于构建高效、健壮的Web应用至关重要。 **数据绑定**是SpringMVC中的一种机制,允许我们将用户通过表单或其他方式提交的请求参数自动绑定到控制器中...