`

struts2学习笔记1-初学Struts2

阅读更多
首先struts2有六个必须的包
struts2必须的包
commons-logging-1.0.4.jar
freemarker-2.3.13.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
commons-fileupload-1.2.1.jar(上传文件的,不上传文件可以不要)

struts2和struts1不同的是,采用的是filter,而不是servlet
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>


struts2的参数收集不像struts1那样依靠ActionForm,也不用extends Action
不依赖struts2的任何类

package com.langhua.action;

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{
		if("langhua".equals(this.getUsername().trim()) && "123456".equals(this.getPassword().trim())){
			return "success";
		}else{
			this.addFieldError("username","username or password is error");
			return "Error";
		}
	}

	@Override
	public void validate() {
		if(null == this.getUsername() || "".equals(this.getUsername().trim())){
			this.addFieldError("username", "username not null");			
		}
		if(null == this.getPassword() || "".equals(this.getPassword().trim())){
			this.addFieldError("password", "password not null");
		}
	}
	
}


struts2的配置文件在Eclipse里面要放到src目录下,这样部署到容器里面的时候,就会放到WEB-INF\classes目录下面
<?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>
	<!-- struts默认的struts-default -->
	<package name="struts2" extends="struts-default">
		<!-- 对应login.*的请求,就到class="com.langhua.action.LoginAction"处理 -->
		<action name="login" class="com.langhua.action.LoginAction">
			<!-- name就是execute()里面return的返回值,再转到相应的页面 input是默认的错误处理 this.addFieldError-->
			<result name="success">/langhua/result.jsp</result>
<result name="input">/login2.jsp</result>
			<result name="Error">/login2.jsp</result>
		</action>
	</package>
</struts>


jsp页面
<%@ taglib prefix="s" uri="/struts-tags" %>
<s:form action="login">
    	<s:textfield name="username" label="username"></s:textfield>
    	<s:password name="password" label="password"></s:password>
    	<s:submit label="submit"></s:submit>
    </s:form>
分享到:
评论

相关推荐

    张龙圣思园struts2学习笔记word

    总的来说,张龙圣思园的Struts2学习笔记是全面了解和掌握Struts2框架的宝贵资源,无论你是初学者还是有经验的开发者,都能从中受益。它会帮助你深入理解Struts2的工作原理,掌握其核心特性和最佳实践,从而提升你的...

    Struts2学习笔记

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

    牧紫小岩的Struts2学习笔记

    综上所述,**牧紫小岩的Struts2学习笔记**涵盖了Struts2框架的关键概念和技术细节,从框架的初始化流程、配置管理到Action的实现与调用,再到结果处理和异常管理,为初学者和资深开发者提供了一个全面深入的学习资源...

    Struts2学习笔记与心得

    ### Struts2与Struts1对比及特性解析 #### 一、Struts2与Struts1的区别 在探讨Struts2的学习心得之前,我们先来...通过以上的学习心得分享,希望能够帮助初学者更好地理解和掌握Struts2框架的基本概念和使用方法。

    struts2学习笔记和源码

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

    Struts-笔记-1

    Struts-笔记-1很可能是对学习或研究Struts框架过程中的重要记录,它可能包含了初学者如何理解Struts的核心概念、架构以及如何在实际项目中应用的要点。 首先,Struts框架的起源和发展对于理解其重要性至关重要。...

    SSH学习笔记--整理.rar

    首先,我们来看“马士兵Struts2学习笔记2011.doc”。Struts2是一个基于MVC(Model-View-Controller)架构模式的Java Web框架,它提供了强大的控制层,帮助开发者构建可维护性高、结构清晰的Web应用。Struts2与SSH中...

    struts2.0学习笔记

    &lt;package name="struts2" extends="struts-default"&gt; &lt;!-- name属性对应表单中的action属性 --&gt; &lt;result&gt;/Result.jsp &lt;/struts&gt; ``` 配置`web.xml`文件,设置Struts2的过滤器,以便拦截所有请求: ```xml...

    struts2教程-学习笔记.zip

    这个"struts2教程-学习笔记.zip"压缩包包含了关于Struts2的基础到高级的学习资源,帮助开发者深入理解并掌握该框架。 首先,"struts2教程.chm"可能是一个包含详细教程的Windows帮助文档,涵盖了Struts2的基础概念,...

    黑马程序员Struts2笔记

    黑马程序员的笔记中可能包含了如何创建一个简单的Struts2应用,从HelloWorld实例到实际的表单提交、文件上传下载等实战案例,帮助初学者快速掌握Struts2的基本用法。 通过学习这些笔记,开发者将能够理解Struts2的...

    Struts2_学习笔记

    Struts2_学习笔记 JavaEE企业级开发,初学JSP技术有所帮助,学习java框架之一Struts2

Global site tag (gtag.js) - Google Analytics