- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、学习方法:
做好笔记。Struts2内容比较多,比较杂。
多做实验,证明结论。
Servlet PK Filter
Servlet:
void init(ServletConfig cfg);//初始化,读取Servlet的配置参数
void service(ServletRequest request,ServletResponse response);服务方法,用户的每次请求都会执行
void destory();//销毁方法
单例的
--------------------------Filter:
void init(FilterConfig cfg);//初始化,读取Filter的配置参数
void doFilter(ServletRequest request,ServletResponse response,FilterChain chain);过滤方法,用户每次访问被过滤的资源,都会执行
void destory();//销毁方法
单例的
总结:过滤器比Servlet强大,它能够绝地是否让目标执行。
---------------------------
实际开发:Servlet在MVC开发模型中作为控制器存在,那么Filter也可以作为控制器。
三、Struts2简介
1、SUN推出的开发模型:
模型1:JSP+JavaBean
模型2:MVC
Struts2是基于MVC开发模型的一个框架,属于表现层框架。(蓝色区域)
3、分析之前的案例
框架都是半成品,程序员在此基础上开发实现自己业务功能的代码。框架是把程序员从繁琐的重复性的代码中解脱出来,提升 提高开发效率。
Struts2的小历史
Struts2:Struts+WebWork框架
Struts1:2003左右很火。
搭建开发环境
下载Struts2的发行包。
新建一个JavaWeb工程,拷贝一下jar包到lib目录中
小技巧:从Struts2发行包apps\struts2-blank\WEB-INF\lib,把其中jar都拷贝过来即可。
在构建路径的顶端,创建一个配置文件struts.xml
在web.xml中配置struts2的过滤器控制器映射:框架提供
验证:
部署到Tomcat中,启动,如果没有错,成功
第一个Struts2案例
Struts2的基本执行原理
第一个案例的开发过程
a、发出请求给框架
b、修改struts.xml配置文件
c、编写动作类和动作方法
d、编写success.jsp或error.jsp页面
e、启动访问即可
编写Struts.xml配置文件没有提示
联网
没有联网:手工配置一下
七、Struts2的执行过程:非常全面的图
八、Struts2的配置文件
1、Struts2框架会按照以下顺序加载配置文件
a、perties:struts2-core**.jar org.apache.struts包中(程序员只能看)
b、struts-default.xml:struts2-core**.jar中(程序员只能看)
c、struts-plugin.xml:在插件的jar包中(程序员只能看)
d、struts.xml:在应用的构建路径顶端。自己定义的Struts配置文件(推荐)
e、perties:在应用的构建路径顶端。程序员可以编写(不推荐)
f、web.xml:配置过滤器时,指定参数。程序员可以编写(不推荐)
特别注意:顺序是固定的。后面的配置会覆盖前面的同名配置信息。
代码验证
Struts2的默认请求路径是***.action,改为***.do
此处的默认配置在perties中。
struts.xml覆盖:
perties覆盖:
web.xml覆盖:
2、更改Struts2默认的参数
3、package元素:(相当于java中的包)
意义:分模块开发。
属性:
name:必须的。配置文件中要唯一。就是一个名字。【如果有子类需要继承,则继承的名字就是name】
extends:指定父包。会把父包中的配置内容继承下来。一般需要直接或间接的继承一个叫做“struts-default”的包(在struts-default.xml配置文件中)。如果不继承该包,那么Struts2中的核心功能将无法使用。
abstract:是否是抽象包。没有任何action子元素的package可以声明为抽象包。【抽象包有什么用】
namespace:指定名称空间。一般以”/”开头。该包中的动作访问路径:namesapce+动作名称。如果namespace=””,这是默认名
文档评论(0)