Struts2中表单数据怎样实例化

 我来答
好程序员
2016-12-09 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部
1、使用领域对象来接收用户输入
er对象中包含两个字段:username和password,在Action中有一个User对象user,则在jsp中:

Jsp代码
<input type="text" name="user.username">
<input type="text" name="user.password">?

<input type="text" name="user.username">
<input type="text" name="user.password"> 来进行数据绑定。
当Struts2尝试设置user对象的username属性时,将依次调用以下的方法:

Java代码
action.getUser();
action.setUser(new User());
action.getUser().setUserName();
action.getUser();
action.setUser(new User());
action.getUser().setUserName();Struts2首先尝试获得User对象的引用,当它发现User对象为null时,它将使用User类的默认构造方法创建一个User实例,并调用action的setUser()方法设置这个实例。这样,Struts2就可以设置Usser对象的username字段了。

在Struts2中,自动实例化对象的特性对于任意层次的对象包含关系都是适用的。
例如, user.address.street这样的表达式会调用:
Java代码
getUser().getAdderss().setStreet(...);
getUser().getAdderss().setStreet(...);
Struts2会先创建User对象,接着创建Address对象,然后设置Address对象的street属性。

2、使用ModelDriver action
Java代码
public class LoginAction implements Action, ModelDriven<User> {

private User user = new User();

@Override?
public User getModel() {
return user;
}

}?

public class LoginAction implements Action, ModelDriven<User> {

private User user = new User();

@Override
public User getModel() {
return user;
}
}
在jsp页面中:
Jsp代码
<input type="text" name="user.username">
<input type="text" name="user.password">
<input type="text" name="user.username">
<input type="text" name="user.password">
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式