北京动力节点-Struts2讲义-第1章Struts2入门
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Struts2讲义
第1章Struts2入门
1.1 Struts2简介
1.1.1 框架
1.1.2 Struts2简介
1.1.3 Struts2下载与版本
Struts2官网:
版本号的意义:
Alpha:
内测版,一般不向外部发布,会有很多Bug。
Beta:除错 + 增新
内测版,但相对于Alpha版已有了很大的改进,消除了严重错误,但还是存在缺陷,需经更多测试来消除。这个阶段的版本会加入新的功能。
RC:除错
Release Candidate,发行候选版,外测版。与Beta版最大的区别在于Beta阶段会加入新功能,而RC版一般不会加入新功能,而主要着重于除错。
RC版本是最终发放给用户的最接近正式版的版本,发行后改正bug就是正式版了,是正式版之前的最后一个测试版。
GA:
General Availability,普通有效版,稳定版,官方开始推荐广泛使用了。
Release:
发行版,即最终版。在一系列测试版之后的正式发行版本,是最终交付用户使用的一个版本。该版本也称标准版。Release会以单词形式出现在软件封面上,有时会使用符号R。
1.1.4 Strut2的优点
(1)Struts2是非侵入式设计
Struts2的Action类为POJO类,不依赖于Servlet API和Struts API。
(2)Struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截等功能。(3)Struts2提供了类型转换器,可以将特殊的请求参数转换成需要的类型。
(4)Struts2的输入验证可以对指定方法进行验证。
(5)提供了全局范围、包范围和Action范围的国际化资源文件管理实现。
1.2 Struts2开发环境的搭建
1.2.1 Struts2的Jar包
Struts2最基本的Jar包,可以从Struts2框架解压目录下的apps中的struts2-blank.war 中获取。
将struts2-blank.war扩展名修改为zip后,解压。在其WEB-INF\lib中所有Jar即为Struts2运行的基本Jar包。从使用的两个日志Jar包可以看出,Struts2使用的是Log4j2日志技术。
1.2.2 Struts2的配置文件
Struts2的默认配置文件为struts.xml,该文件需存放在WEB-INF/classes下。即,在myEclipse中应放在src目录下。
Struts2配置文件的头部可以从struts2-core-2.3.24.jar下的struts-2.3.dtd中找到。
1.2.3 配置Struts2的启动项
在Struts2中,Struts框架是通过Filter启动的。Filter在web.xml中的配置如下:
若忘记了配置细节,可从struts2-blank.war解压目录中WEB-INF下的web.xml中复制。
1.2.4 搭建成功的测试
将该项目部署到服务器后,启动服务器,在控制台没有报错,则说明Struts2应用平台搭建成功。
1.2.5 第一个Struts2的应用程序
完成功能:
用户登录后在页面显示“Struts2欢迎你【xxx】!”,将用户名显示出来。
实现步骤:
在搭建好Struts2环境后,完成下面步骤:
Step1:新建页面index.jsp
Step2:创建Action类
Step3:修改struts.xml配置文件
Step4:创建success.jsp页面
1.3 Struts2工作流程1.3.1 开发流程
(1)编写页面
(2)定义Action类
(3)注册Action
(4)编写结果页面
1.3.2 执行流程
1.4 Web项目的部署(回顾)
1.4.1 端口号的问题
Tomcat默认访问的端口号为8080,而真正上线后,是无需输入端口号的。因为浏览器默认访问的服务端端口号是80。所以,将Tomcat默认的端口号修改为80即可使用户在访问时,不用再提交端口号了。
在Tomcat主目录下的conf/server.xml文件中修改。
1.4.2 项目名称的问题
在程序的开发阶段,对代码进行调试时,一般是通过如下方式将项目部署到T omcat主目录下的webapps目录下。
访问时在浏览器地址栏输入如下形式URL即可访问。即端号号后需要指定要访问哪个项目下的资源,即项目名称。
但真正在项目上线后,是不用让用户输入项目名称的。此时,需要将项目按照如下方式部署到Tomcat的webapps下的ROOT目录中。
选择“删除之前部署的资源”选项即可。再访问时,无需再输入项目名称了。
在这个程序中,struts.xml的
而index.jsp页面的
表单的action属性值却没有加斜杠:可一旦在表单的action属性值前加上斜杠就会报404错误,找不到相应资源:
那这是为什么呢?这里面就涉及到相对路径的问题了。
1.5.1访问路径与资源名称
通常的URL资源访问路径由两部分构成:访问路径与资源名称。资源名称指的是要访问资源的直接名称,如show.jsp,或与要访问资源的资源存在映射关系间接名称,如show.do。而访问路径,则是通过该路径则可以找到指定的资源,即在URL资源访问路径中除了资源名称以外的部分。
在URL访问路径中,最后一部分为资源名称,而其它部分则为访问路径。
根据“访问路径是否可以独立完成资源准确定位”的判别标准,可以将访问路径分为绝对路径与相对路径。
1.5.2绝对路径
绝对路径,是指根据给出的访问路径可以准确定位到资源的路径。例如,你要告诉对方你现在的位置,你说:我现在在北京故宫游客A入口处。这就是个绝对地址,听者根据你所