Struts2获取用户客户端输入的三种的方法:
1.使用领域对象接收用户的输入:
第一种方法,需要在jsp页面中所示:
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="user.username" /></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="user.password" /></td>
</tr>
<tr>
<td><input type="reset" value="重填" /></td>
<td><input type="submit" value="登录" /></td>
</tr>
</table>
注意红色字体显示部分
在建立User实体类:
package org.struts2lesson.ch03.model;
import java.io.Serializable;
public class User
{
private String username;
private String password;
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
}
建立核心处理类LoginAction,代码如下所示:
package org.struts2lesson.ch03.action;
import org.struts2lesson.ch03.model.User;
import com.opensymphony.xwork2.Action;
public class LoginAction implements Action
{
private User user;
public String execute() throws Exception
{
if("zhangsan".equals(user.getUsername()) && "1234".equals(user.getPassword()))
{
return SUCCESS;
}
else
{
return ERROR;
}
}
public User getUser()
{
return user;
}
public void setUser(User user)
{
this.user = user;
}
}
建立success.jsp和error.jsp,并且配置配置Struts.xml文件,运行即可。
2. 使用ModelDriven action方式
使用ModelDriven使用领域对象的方式,就是然action实现ModelDriven接口,这个接口只有一个方法,如下:
public T getModel()
建立loginModelDriven.jsp页面,代码如下所示:
<form action="loginModelDriven.action" method="post">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td><input type="reset" value="重填" /></td>
<td><input type="submit" value="登录" /></td>
</tr>
</table>
</form>
注意红色字体
建立LoginModelDrivenAction类:代码如下所示:
package org.struts2lesson.ch03.action;
import org.struts2lesson.ch03.model.User;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ModelDriven;
public class LoginModelDrivenAction implements Action,ModelDriven<User>
{
private User user = new User();
public String execute() throws Exception
{
if("zhangsan".equals(user.getUsername()) && "1234".equals(user.getPassword()))
{
return SUCCESS;
}
else
{
return ERROR;
}
}
public User getModel()
{
return user;
}
}
注意粗体更改过的部分。
3 直接使用action的属性接收用户输入:
对于某些应用场景,或一些简单的应用中,我们可能不需要使用模型对象,如果单纯为了接收用户的输入数据而创建模型对象,显得有些过于复杂了,例如对于搜索应用,用户输入的搜索条件就不值得为它创建一个模型对象。所以,可以直接使用acton来接收用户的输入。下面在登录程序中做一些修改:
修改LoginModelDrivenAction类如下所示:
package org.struts2lesson.ch03.action;
import com.opensymphony.xwork2.Action;
public class LoginPropertyAction implements Action
{
private String username;
private String password;
public String execute() throws Exception
{
if("zhangsan".equals(username) && "1234".equals(password))
{
return SUCCESS;
}
else
{
return ERROR;
}
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
}
新建loginProperty.jsp,部署struts.xml文件就可以了。
分享到:
相关推荐
### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...
### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...
### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...
13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...
本学习笔记将深入探讨Struts2的核心概念、架构以及实际应用。 一、Struts2框架概述 1. 架构:Struts2基于Model-View-Controller(MVC)设计模式,将业务逻辑、数据处理和用户界面分离,提高了代码的可读性和可维护...
在Struts2中,学习笔记通常会涵盖以下几个关键概念: 1. **源代码查看和Javadoc**:开发者可以通过查看源代码来理解Struts2的工作原理,而Javadoc则提供了API文档,帮助理解类和方法的功能。 2. **包(Package)和...
### 牧紫小岩的Struts2学习笔记精要 #### Struts2与Struts1对比 在**牧紫小岩的Struts2学习笔记**中,提到了Struts1和Struts2在实例化Action上的关键差异。Struts1在启动时创建Action实例,并在整个应用程序运行...
### Struts2学习笔记知识点详解 #### 一、基础知识 **1. Struts2核心组件** - **XWork-2.0.5.jar**: 引入WebWork框架的核心功能,这是Struts2的一个重要组成部分,提供了请求处理的核心逻辑。 - **Commons-...
本笔记将深入探讨Struts2的核心概念、执行流程、类型转换、输入验证和国际化等方面。 **一、Struts2框架基础** Struts2是Apache软件基金会的一个开源项目,它是基于拦截器的MVC框架,继承了WebWork框架的优点。...
本篇超详细学习笔记将带你逐步深入理解Struts2的核心概念和运作机制。 首先,让我们了解Struts2的基本特性。Struts2是一个基于Servlet的框架,它通过将JSP作为视图(View),Servlet作为控制器(Controller),并将...
本篇学习笔记将深入探讨Struts2的入门与配置,继续上一讲的内容。 首先,Struts2的基础入门涉及到以下几个核心概念: 1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中。Action类是处理用户请求的主体...
Struts2的输入验证可以分为客户端验证和服务器端验证,两者都有其优点和适用场景。 首先,客户端验证通常使用JavaScript或jQuery等前端技术在用户提交表单前检查数据。这种验证方式能够提供即时反馈,提高用户体验...
在Struts2的学习过程中,第五讲主要探讨的是输入验证,这是确保应用程序数据安全和准确性的关键步骤。输入验证通常发生在客户端和服务器端,防止恶意数据的提交,并确保用户输入的数据符合预设的格式和规则。 首先...
本笔记将重点介绍Struts2的核心概念、配置、动作(Action)以及拦截器(Interceptor)。 一、Struts2核心概念 1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中,它是处理用户请求的入口点。Action类...
### Struts2_Action 学习笔记与通配符配置详解 #### 一、Struts2简介及简单配置 Struts2是一个基于Java EE平台的开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进。Struts2的核心功能之一是...
虽然笔记中没有提供源代码,但学习过程中可以通过模仿示例创建简单的Struts2应用,如用户登录注册系统,熟悉Action配置、视图展现和拦截器的使用。 总结,黑马程序员Struts2 2016版的前3Days笔记重点介绍了Struts2...