`

Struts2学习笔记(二) Struts2获取用户客户端输入的三种的方法

    博客分类:
  • Java
阅读更多
                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 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...

    struts2学习笔记.doc

    ### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...

    struts2学习笔记黑马程序员

    ### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...

    struts2四天的学习笔记

    13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...

    Struts2学习笔记

    本学习笔记将深入探讨Struts2的核心概念、架构以及实际应用。 一、Struts2框架概述 1. 架构:Struts2基于Model-View-Controller(MVC)设计模式,将业务逻辑、数据处理和用户界面分离,提高了代码的可读性和可维护...

    牧紫小岩的Struts2学习笔记

    ### 牧紫小岩的Struts2学习笔记精要 #### Struts2与Struts1对比 在**牧紫小岩的Struts2学习笔记**中,提到了Struts1和Struts2在实例化Action上的关键差异。Struts1在启动时创建Action实例,并在整个应用程序运行...

    struts 2 学习笔记

    在Struts2中,学习笔记通常会涵盖以下几个关键概念: 1. **源代码查看和Javadoc**:开发者可以通过查看源代码来理解Struts2的工作原理,而Javadoc则提供了API文档,帮助理解类和方法的功能。 2. **包(Package)和...

    struts2学习笔记

    ### Struts2学习笔记知识点详解 #### 一、基础知识 **1. Struts2核心组件** - **XWork-2.0.5.jar**: 引入WebWork框架的核心功能,这是Struts2的一个重要组成部分,提供了请求处理的核心逻辑。 - **Commons-...

    struts2笔记

    本笔记将深入探讨Struts2的核心概念、执行流程、类型转换、输入验证和国际化等方面。 **一、Struts2框架基础** Struts2是Apache软件基金会的一个开源项目,它是基于拦截器的MVC框架,继承了WebWork框架的优点。...

    Struts2超详细学习笔记分享(献给自学新人)

    本篇超详细学习笔记将带你逐步深入理解Struts2的核心概念和运作机制。 首先,让我们了解Struts2的基本特性。Struts2是一个基于Servlet的框架,它通过将JSP作为视图(View),Servlet作为控制器(Controller),并将...

    struts2学习笔记二(第2讲.Struts2入门与配置续)

    本篇学习笔记将深入探讨Struts2的入门与配置,继续上一讲的内容。 首先,Struts2的基础入门涉及到以下几个核心概念: 1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中。Action类是处理用户请求的主体...

    struts2学习笔记六(第6讲.Struts2的输入校验续一)

    Struts2的输入验证可以分为客户端验证和服务器端验证,两者都有其优点和适用场景。 首先,客户端验证通常使用JavaScript或jQuery等前端技术在用户提交表单前检查数据。这种验证方式能够提供即时反馈,提高用户体验...

    struts2学习笔记五(第5讲.Struts2的输入校验)

    在Struts2的学习过程中,第五讲主要探讨的是输入验证,这是确保应用程序数据安全和准确性的关键步骤。输入验证通常发生在客户端和服务器端,防止恶意数据的提交,并确保用户输入的数据符合预设的格式和规则。 首先...

    晒一下,我以前struts2学习笔记

    本笔记将重点介绍Struts2的核心概念、配置、动作(Action)以及拦截器(Interceptor)。 一、Struts2核心概念 1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中,它是处理用户请求的入口点。Action类...

    Struts2_Action学习笔记、通配符{1},{2}

    ### Struts2_Action 学习笔记与通配符配置详解 #### 一、Struts2简介及简单配置 Struts2是一个基于Java EE平台的开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进。Struts2的核心功能之一是...

    [黑马程序员Struts2 2016版视频] 前3Days笔记

    虽然笔记中没有提供源代码,但学习过程中可以通过模仿示例创建简单的Struts2应用,如用户登录注册系统,熟悉Action配置、视图展现和拦截器的使用。 总结,黑马程序员Struts2 2016版的前3Days笔记重点介绍了Struts2...

Global site tag (gtag.js) - Google Analytics