`
ynp
  • 浏览: 437970 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用struts2 验证用户登录demo

阅读更多
用struts2 验证用户登录demo
--------》login.jsp   引入 标签 <%@taglib uri="/struts-tags" prefix="s"%>
  <body>
     <s:form action="login">
     	<s:textfield name="userName" label="用户名称"/><br>
     	<s:password name="passWord" label="用户密码"/><br>
     	<s:submit value="登录" align="center"/>	
     </s:form>
  </body>

 
  -------》LoginAction
package com.xj.actions;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {
	private String userName;
	private String passWord;
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassWord() {
		return passWord;
	}
	public void setPassWord(String passWord) {
		this.passWord = passWord;
	}
	
	
	public String execute() throws Exception {
		boolean userNameOK = false;
		boolean passWordOK = false;
		if (getUserName().trim().equals("jim")){
			userNameOK = true;
		}else{
			userNameOK = false;
			addFieldError("userName", "您输入的用户名称不正确");
		}
		
		if (getPassWord().trim().equals("123")){
			passWordOK = true;
		}else{
			passWordOK = false;
			addFieldError("passWord", "您输入的用户密码不正确");
		}
		
		if(passWordOK && userNameOK){
			return "success";
		}
		return "input";
	}

	
	@Override
	public void validate() {
	
		if (getUserName() == null || getUserName().trim().equals("")) {
			addFieldError("userName", "请输入用户名称");
		} 
		
		if (getPassWord() == null || getPassWord().trim().equals("")) {
			addFieldError("passWord", "请输入用户密码");
		} 
	}
	
}


执行过程是这样:
表单提交给LoginAction,LoginAction先执行validate方法,检验loginName和password是否符合要求,
  如果不符合,就会addFieldError (把错误信息放到Field栈里),如果Field栈里有错误信息的话,它就不会再执行execute方法,直接转发(Dispatcher)到INPUT即“input”所指定的错误处理页面, 这里为location="login.jsp",即让它返回到表单登录页去. 如果刚才validate方法中验证正确,即Field栈中没有错误信息,就会执行execute方法。在这里execute返回SUCCESS。

分享到:
评论

相关推荐

    Struts2登录DEMO

    通过这个Struts2登录DEMO,你可以了解并实践如何在实际项目中实现用户登录功能,包括接收用户输入、验证、处理异常以及显示结果。同时,这也是一个很好的起点,帮助你进一步学习Struts2框架的其他高级特性,如插件、...

    struts2 ,struts2 demo

    这个“struts2,struts2 demo”很显然是一个包含Struts2框架示例代码的压缩包,旨在帮助开发者理解和学习如何在实际项目中运用Struts2。 **1. Struts2简介** Struts2是Apache软件基金会下的一个开源项目,它继承了...

    Struts2 demo2

    通过这些知识点,我们可以了解到"Struts2 demo2"可能涵盖了Struts2的核心特性,如Action配置、数据校验、类型转换、OGNL表达式、防止重复提交和自定义标签库的使用。这些内容对于理解和实践Java web开发中的MVC模式...

    Struts2 Login Demo

    Struts2 Login Demo 是一个基于Struts2框架的登录演示应用,它展示了如何在实际项目中实现用户登录功能。Struts2是Java EE平台上的一款开源MVC框架,它简化了Web应用开发,提供了强大的动作控制、拦截器机制以及丰富...

    jsp+Struts2 注册 登录 入门demo

    【JSP+Struts2 注册登录入门 demo】是一个典型的Web应用开发实例,它结合了Java Server Pages(JSP)和Struts2框架,用于实现用户注册和登录功能。Struts2是一个强大的MVC(Model-View-Controller)框架,它简化了...

    纯struts2开发带log4j的用户登录demo

    在本示例中,"纯struts2开发带log4j的用户登录demo"是教你如何利用Struts2框架来实现一个简单的用户登录功能,并结合log4j进行日志记录。Log4j是一个广泛使用的日志记录工具,它提供了灵活的日志配置,有助于调试、...

    struts2经典demo

    5. **Interceptor使用**:可能有一些预定义的Interceptor如`logger`和`validation`,用于日志和表单验证,也可能是自定义的Interceptor,展示了如何扩展Struts2的功能。 6. **依赖的jar包**:Struts2运行所需的库,...

    struts2入门demo

    这个"struts2入门demo"是为初学者准备的一个基础实践项目,旨在帮助理解Struts2的核心概念和工作流程。让我们深入探讨一下Struts2的关键知识点。 首先,Struts2是一个基于MVC(Model-View-Controller)架构的框架,...

    采用struts做的用户登录DEMO

    综上所述,这个DEMO涵盖了Struts2框架的基础使用、用户登录验证的实现、以及一些基本的安全考虑。通过分析这个DEMO,开发者可以学习到如何在Struts2环境中构建简单的Web应用程序,并了解相关的最佳实践。

    Struts2小demo

    Struts2支持多种视图技术,包括JSP、FreeMarker、Velocity等,这个demo可能使用JSP来展示结果。 6. **web.xml**:Web应用的部署描述符,配置了Struts2的前端控制器Filter,以及可能的初始化参数。 此外,SSH集成...

    Struts2入门demo

    - Struts2的拦截器是AOP(面向切面编程)的一种实现,可以在Action执行前后添加额外的功能,如日志记录、权限检查、数据验证等。在`struts.xml`中,你可以配置拦截器栈,定义Action执行的顺序。 6. **结果类型**:...

    struts2 自定义验证程序的实现方法详解

    Struts2 提供了一个强大的验证框架,允许用户创建自定义验证器来满足各种需求。 #### 二、自定义验证程序的实现 ##### 1. 实现 Validator 接口 为了实现自定义的验证器,首先需要继承或实现 Struts2 的 Validator...

    struts2-demo及登录验证的拦截器的使用

    在这个“struts2-demo”项目中,我们将探讨Struts2的核心概念以及如何利用拦截器实现登录验证。 首先,让我们深入理解Struts2框架的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的载体,处理用户...

    自己配置的struts2 demo

    在这个“自己配置的struts2 demo”中,我们将会探讨Struts2的核心概念、配置步骤以及如何通过源代码实现一个简单的应用。 首先,Struts2框架的核心在于Action类,它是业务逻辑处理的主要组件。在`src`目录下,通常...

    struts2留存小demo

    6. **拦截器类**:自定义拦截器可以扩展Struts2的功能,例如登录验证、日志记录等。 7. **资源文件**:如properties文件,用于国际化和本地化设置,或者XML文件,用于配置其他服务。 通过这个小demo,你可以学习和...

    基于struts2的博客网站Demo(自己学习)

    这个基于Struts2的博客网站Demo是开发者为了个人学习目的创建的一个实例项目,它展示了如何在实际开发中应用Struts2框架。在这个项目中,开发者可能涉及了以下几个关键知识点: 1. **MVC模式**:Struts2遵循Model-...

    Struts2Demo

    Struts2Demo是一个基于Struts2框架的示例项目,主要展示了如何利用Struts2进行Web应用程序开发,尤其是关于用户登录功能的实现。Struts2是Apache软件基金会下的一个开源项目,它是一个用于构建企业级Java Web应用的...

    Struts2 注解 Demo

    Struts2是一个强大的MVC(Model-View-Controller)框架,它在Java Web开发中广泛使用,极...通过`Struts2Demo`实例,你可以掌握如何创建和使用这些注解,以及如何在实际项目中应用它们,从而提升你的Java Web开发技能。

    struts2Demo

    在`struts2Demo`中,JSP文件会使用Struts2的标签库,如`s:form`, `s:textfield`, `s:submit`等,来简化页面与Action之间的交互。这些标签会自动处理表单提交、验证以及错误显示等功能。 控制器层的实现主要依赖于...

    struts 验证框架 demo

    通过这个Demo,开发者可以了解Struts验证框架的工作原理,学习如何在实际项目中应用它来提高数据质量和安全性。不过,"请不要下载哈..."的描述可能意味着这个示例可能已经过时或者不再可用,建议寻找官方的或者更新...

Global site tag (gtag.js) - Google Analytics