`
yueyan945
  • 浏览: 6217 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts2学习笔记1_基本配置与登录

阅读更多
struts官方网址:http://struts.apache.org

1.新建web工程,导入基本的5个jar包:
        commons-logging-1.0.4.jar
        freemarker-2.3.8.jar
        ognl-2.6.11.jar
        struts2-core-2.0.14.jar
        xwork-2.0.7.jar



2.配置web.xml过滤器
<filter>
 <filter-name>struts2</filter-name>
 <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
 <filter-name>struts2</filter-name>
 <url-pattern>/*</url-pattern>
</filter-mapping>


3.新建Action(LoginAction),它是一个POJO
package com.test.bean;

public class LoginAction {

	private String username;
	private String password;
	
	// setter和getter ...
	
	//Action中的处理方法
	public String execute(){
		if( "yueyan".equals(this.getUsername().trim()
                        && "123".equals(this.getPassword().trim())) {
			return "success";
		}else{
			return "error";
		}	
	}
}


4.在src目录下(运行时实际是WEB-INF/classes目录),新建struts.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<package name="struts2" extends="struts-default">
		<action name="login" class="com.test.struts2.action.LoginAction">
			<result >/success.jsp</result>
			<result name="error">/error.jsp</result>
                  </action>
	</package>
</struts>

<result>节点的name属性若不写,则默认为name="success"

5.login.jsp页面
    <form action="login.action" method="post"> 
    	用户名:<input type="text" name="username" /><br>
    	密码:<input type="password" name="password" /><br>
    	<input type="submit">
    </form>

成功页面success.jsp 失败页面error.jsp 省略

对登录进行改进:
1.继承com.opensymphony.xwork2.ActionSupport,改善我们的Action类
package com.test.struts2.action;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction2 extends ActionSupport {

	private String username;
	private String password;
		
	//  setter和getter
	
   /** 处理 */
	@Override
	public String execute(){
		if( "yueyan".equals(this.getUsername().trim())
                       && "123".equals(this.getPassword().trim()) ){
			return "success";
		}else{
			return "error";
		}	
	}
	
   /** 验证 */
	@Override
	public void validate() {
		if( "".equals(this.getUsername().trim()) ){
		  this.addFieldError("username", "用户名为空");//给字段添加错误信息
		}
		if( "".equals(this.getPassword().trim()) ){
		  this.addFieldError("password", "密码为空");
		}
	}
}


2.struts.xml中添加一个新的action
<action name="login2" class="com.test.struts2.action.LoginAction2">
			<result >/success.jsp</result>
			<result name="error">/error.jsp</result>
			<result name="input">/login.jsp</result>
		</action>

<result name="input">/login.jsp</result>表示用login.jsp来显示验证所产生的错误信息

3.login.jsp中使用struts2的标签
先导入标签库:
<%@ taglib prefix="s" uri="/struts-tags" %>

使用标签:
<s:form action="login2">
    	<s:textfield name="username" label="用户名" />
    	<s:password name="password" label="密  码" />
    	<s:submit label="提交" />
    </s:form>



分享到:
评论

相关推荐

    struts2学习笔记(1)

    ### Struts2学习笔记知识点详解 #### 一、Struts2框架的基本引入步骤 ##### 1. 导入Struts2相关Jar包 在引入Struts2框架时,首先需要将Struts2的相关Jar包导入到项目的类路径中。这些Jar包通常包括核心库以及其他...

    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学习笔记

    5. **类型转换与输入校验**:Struts2在类型转换过程中也会进行基本的校验,如检查非空、数值范围等。 **四.Struts2的核心:拦截器** 拦截器是Struts2的核心组件,它们在Action执行前后介入处理流程。拦截器可以...

    Struts1及14. Struts2学习笔记

    本学习笔记将对Struts1和Struts2进行详细解析。 **Struts1简介** Struts1是早期流行的MVC框架,它的核心是ActionServlet,负责处理HTTP请求,并通过ActionForm对象收集表单数据,然后调用Action类的方法进行业务...

    【张冰Struts2学习笔记】0102_第一个Struts2实例

    这篇学习笔记将带你入门Struts2,通过创建第一个实例来理解其核心概念和基本配置。 首先,了解Struts2框架的结构至关重要。Struts2的核心组件包括Action、Result、Interceptor等,它们协同工作,处理HTTP请求并呈现...

    struts2详细学习笔记

    总的来说,学习Struts2需要理解这些基本配置元素的含义和用法,以及如何通过常量配置来调整框架的行为。此外,还需了解Action、Interceptor(拦截器)的概念,以及结果类型、异常处理、国际化支持等内容。熟练掌握...

    struts2学习笔记和源码

    这份"struts2学习笔记和源码"资源是学习这个框架的理想材料,特别适合初学者。 一、Struts2框架基础 Struts2是Apache软件基金会下的一个项目,它是Struts1的升级版,弥补了Struts1的一些不足,如动作映射和拦截器等...

    Struts2学习笔记与心得

    在探讨Struts2的学习心得之前,我们先来分析一下Struts2与Struts1之间的区别。 ##### 1.1 架构设计 - **Struts1**:采用MVC(Model-View-Controller)架构模式,其中控制器是由`ActionServlet`来实现的,该控制器...

    struts2学习笔记.rar

    通过这个"struts2学习笔记",你将有机会深入学习Struts2框架,掌握其基本用法和高级特性,提升你在Java Web开发领域的技能。记得结合实际项目练习,理论与实践相结合,才能更好地掌握和运用Struts2。

Global site tag (gtag.js) - Google Analytics