一、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复习笔记的更多相关文章

  1. Java基础复习笔记系列 九 网络编程

    Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...

  2. Java基础复习笔记系列 八 多线程编程

    Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...

  3. Java基础复习笔记系列 七 IO操作

    Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...

  4. Java基础复习笔记系列 五 常用类

    Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...

  5. Java基础复习笔记系列 四 数组

    Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...

  6. Struts2学习笔记⑧

    今天是Struts2学习笔记的最后一篇文章了.用什么做结尾呢,这两天其实还学了很多东西,没有记录下,今天就查漏补缺一下. 文件上传与下载.FreeMarker以及昨天没做完的例子 文件上传与下载 文件 ...

  7. Struts2学习笔记①

    Struts2 学习笔记① 所有的程序学习都从Hello World开始,今天先跟着书做一个HW的示例. Struts2是一套MVC框架,使用起来非常方便,接触到现在觉得最麻烦的地方是配置文件.我的一 ...

  8. Struts2学习笔记NO.1------结合Hibernate完成查询商品类别简单案例(工具IDEA)

    Struts2学习笔记一结合Hibernate完成查询商品类别简单案例(工具IDEA) 1.jar包准备 Hibernate+Struts2 jar包 struts的jar比较多,可以从Struts官 ...

  9. Java基础复习笔记基本排序算法

    Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...

随机推荐

  1. (转)深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0

      深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0 发表于2016年07月15号由52nlp 接上文<深度学习主机攒机小记>,这台GTX10 ...

  2. centos7+nginx 1.9.0+php-fpm+phpstorm+xdebug+vmware开发环境搭建

    1.php-fpm yum install php-fpm 默认配置在本地9000端口监听 service php-fpm restart启动 2.nginx 1.9.0 需先安装gcc zlib o ...

  3. Sea.js学习5——Sea.js的构建工具spm

    如果项目遵循推荐的标准目录结构: foo-module/ |-- dist 存放构建好的文件 |-- src 存放 js.css 等源码 | |-- foo.js | `-- style.css `- ...

  4. ruby md5加签验签方法

    # md5签名def md5_sign(data,key) return OpenSSL::Digest::MD5.hexdigest(data+key)end # md5验签def md5_veri ...

  5. Python正则表达式指南

    1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十 ...

  6. js零散总结

    字符串的查找 index of 指定查找位置 可以查所有,不支持正则   找不到返回-1 var i=-1; while((i=str.indexOf("关键词",i+1))!=- ...

  7. 通过dblink的方式查看表的结构

    有dba权限: SELECT * FROM DBA_TAB_COLUMNS@DBLINK_TEST WHERE TABLE_NAME = '表名'; 没有dba权限:SELECT * FROM USE ...

  8. “请运行Chkdsk工具”怎么解决

    今天重新系统,想从移动硬盘中拷贝数据,但是老是提示:“请运行Chkdsk工具” 于是在百度搜索一下,有人提供的解决方案很不错,在些引用一下,以备忘! 电脑上经常遇到这样的提示“某某某文件已损坏且无法读 ...

  9. apache 配置https

    1.生成密钥# openssl genrsa 1024 > server.key这是用128位rsa算法生成密钥,并保存到server.key文件 2.生成证书请求文件# openssl req ...

  10. Nodejs日志管理包

    Nodejs日志管理工具包:log4js 和 winston 1.log4js的使用 1)package.json中加入依赖 "log4js":"~0.6.21" ...