Struts2复习笔记
一、Struts2的获得
Struts2的官网是http://struts.apache.org/,需要的同学可以自己去官网上下载。
二、Struts2的配置
以动态web项目为例,讲解配置Struts2,工具为Eclipse、Tomcat、MySQL。
首先,在Eclipse中创建一个动态web项目;
第二,将下载的Struts2的相关jar包复制到WebContent/WEB-INF/lib下;
第三,配置web.xml;
1.在web.xml中添加Struts2,即在<web-app>和</web-app>中间添加如下代码:
<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>
2.在src目录下创建struts.xml文件,并在<struts>和</struts>中间添加如下代码:
<package name="uploadName" extends="struts-default">
<action name="upload" class="com.zhaolan.heart.UpLoad">
<result name="error">/error.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
这里要注意,<action>中的name属性值一定要与页面form的action的值名称一样,class的值是调用的action的类详细位置(包括包)。子标签<result>表示action类执行之后跳转到的页面,action类的返回结果要与<result>的name属性值相同,跳转页面要注意路径。
三、Struts2拦截器
拦截器是动态拦截Action调用的对象。
拦截器链是指能够将拦截器按一定的顺序联结成一条链。
其实,以我的理解拦截器就是一个特殊的类,体现切面编程的思想。与一般类不同的是拦截器要在xml文件里配置。接下来就让我们看看拦截器的定义格式。
先假设拦截器定义在struts-default.xml,在struts.xml里引用struts-default.xml,代码为<include file="struts-default.xml的完全路径" />
拦截器的定义格式:
<interceptor name="拦截器名" class="拦截器实现类" />
如果需要用拦截器传回参数,则格式如下:
<interceptor name="拦截器名" class="拦截器实现类" >
<param name="参数名">参数值</param>
</interceptor>
配置拦截器栈的代码:
<interceptor-stack name="拦截器栈名">
<interceptor-ref name="拦截器名" />
………………
</interceptor-stack>
另外需要注意的是自定义拦截器时,都要直接或间接的实现接口com.opensymphony.xwork2.interceptor.Interceptor
以上是struts2中的一些基础知识,下一篇将以一个简单的实际项目来说明struts2的使用。
Struts2复习笔记的更多相关文章
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- Java基础复习笔记系列 四 数组
Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...
- Struts2学习笔记⑧
今天是Struts2学习笔记的最后一篇文章了.用什么做结尾呢,这两天其实还学了很多东西,没有记录下,今天就查漏补缺一下. 文件上传与下载.FreeMarker以及昨天没做完的例子 文件上传与下载 文件 ...
- Struts2学习笔记①
Struts2 学习笔记① 所有的程序学习都从Hello World开始,今天先跟着书做一个HW的示例. Struts2是一套MVC框架,使用起来非常方便,接触到现在觉得最麻烦的地方是配置文件.我的一 ...
- Struts2学习笔记NO.1------结合Hibernate完成查询商品类别简单案例(工具IDEA)
Struts2学习笔记一结合Hibernate完成查询商品类别简单案例(工具IDEA) 1.jar包准备 Hibernate+Struts2 jar包 struts的jar比较多,可以从Struts官 ...
- Java基础复习笔记基本排序算法
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...
随机推荐
- 基于MVC4+EasyUI的Web开发框架形成之旅--权限控制
我在上一篇随笔<基于MVC4+EasyUI的Web开发框架形成之旅--框架总体界面介绍>中大概介绍了基于MVC的Web开发框架的权限控制总体思路.其中的权限控制就是分为“用户登录身份验证” ...
- 031. aps.net中数据绑定控件两种添加自动编号的方法
前端HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defaul ...
- 请求rest web服务client
RestClient using System; using System.Globalization; using System.IO; using System.Net; using System ...
- 使用Visual Studio Code搭建TypeScript开发环境
使用Visual Studio Code搭建TypeScript开发环境 1.TypeScript是干什么的 ? TypeScript是由微软Anders Hejlsberg(安德斯·海尔斯伯格,也是 ...
- iOS 定位于地理反编码
- (void)viewDidLoad { [self startLocation]; } //开始定位 -(void)startLocation{ self.locationManager = [[ ...
- Perl Sort函数用法总结和使用实例
一) sort函数用法 sort LISTsort BLOCK LISTsort SUBNAME LIST sort的用法有如上3种形式.它对LIST进行排序,并返回排序后的列表.假如忽略了SUBNA ...
- protoc 和 protoc-gen-go 产生的 proto 文件代码对比
protoc 命令来自 https://github.com/google/protobuf, 由于这里没有 go 的产生代码, go的产生代码在 protoc-gen-go (https://gi ...
- Codeforces Round #229 (Div. 2) C
C. Inna and Candy Boxes time limit per test 1 second memory limit per test 256 megabytes input stand ...
- EL简介
一.EL简介 1.语法结构 ${expression}2.[]与.运算符 EL 提供.和[]两种运算符来存取数据. 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符 ...
- 剑指Offer:面试题22——栈的压入,弹出序列(java实现)
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...