Struts2拦截器翻译自Struts2官方网站Word格式.docx

上传人:b****5 文档编号:15852982 上传时间:2022-11-16 格式:DOCX 页数:15 大小:20.69KB
下载 相关 举报
Struts2拦截器翻译自Struts2官方网站Word格式.docx_第1页
第1页 / 共15页
Struts2拦截器翻译自Struts2官方网站Word格式.docx_第2页
第2页 / 共15页
Struts2拦截器翻译自Struts2官方网站Word格式.docx_第3页
第3页 / 共15页
Struts2拦截器翻译自Struts2官方网站Word格式.docx_第4页
第4页 / 共15页
Struts2拦截器翻译自Struts2官方网站Word格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

Struts2拦截器翻译自Struts2官方网站Word格式.docx

《Struts2拦截器翻译自Struts2官方网站Word格式.docx》由会员分享,可在线阅读,更多相关《Struts2拦截器翻译自Struts2官方网站Word格式.docx(15页珍藏版)》请在冰豆网上搜索。

Struts2拦截器翻译自Struts2官方网站Word格式.docx

所以套用句外国人的话说吧,在一个Action执行时,让我们为它再提升一些吧,给Action更大

的舞台更强大的力量吧。

如上图所示,Struts2的Action被一个或者多个拦截器围绕,所有的用户请求都会被拦截器所拦截,最后交给Action处理,处理结果以逻辑视图的方式返回给用户,调用的流程由配置文件来实现。

在一些例子中,一个拦截器可以解决像重复提交以及验证失败这样的例子。

当然也可以改变一个Action在执行前的状态。

拦截器可以定义为一个指定执行顺序的链中,在某些情况下,拦截器的顺序非常的重要。

="

struts-default"

&

gt;

该元素的意思是定义了一个继承于struts-default包的包,那么该包中的所有action均可使用struts-default.xml中定义的拦截器以及拦截器链。

其中注意一点,struts-default.xml中定义了一系列的拦截器和拦截器链,同时也定义了一个默认的拦截器defaultStack,一电定义了默认的拦截器,那么该拦截器将会对包中的所有的Action起作用,当然如果你的Action中显式地定义了拦截器,那么默认拦截器将会失去作用,当然如果想不让他失去作用,那么也必须显式地定义系统默认的拦截器。

&

lt;

default-interceptor-ref..../&

元素为&

package../&

元素的一个子元素配置,如果在某个包中定义了一个默认的拦截器,那么此拦截器将对该包中的所有的Action都是有效的,当然一定要记住,显式地定义拦截器的情况除外。

当然除了可以使用系统提供的默认的拦截器,我们也可以自定义自己的拦截器。

Struts2框架提供了一个定义拦截器的接口Interceptor接口。

同时Struts2框架也提供了一个可以用于过滤拦截Action方法的类MethodFilterInterceptor。

该类有两个属性excludeMethods和includeMethods。

分别代表指定拦截器拒绝拦截的方法和需要拦截的方法。

例:

struts.xml

packagename="

default"

extends="

interceptors&

interceptorname="

timer"

class="

.."

/&

logger"

/interceptors&

actionname="

login"

class="

tutorial.Login"

interceptor-refname="

resultname="

input"

login.jsp&

/result&

success"

type="

redirect-action"

/secure/home&

/action&

/package&

在大部分的Web应用中,我们发现会一再地重复应用一些拦截器的设置。

重复地定义一系列的拦截器是个麻烦的事,当然我们可以绑定这些拦截器到一个链中。

#160;

interceptor-stackname="

myStack"

/interceptor-stack&

tutuorial.Login"

看看上面的配置如果不明白的话,再去看看struts-default.xml可以弄清楚这些拦截器都干什么了。

?

xmlversion="

1.0"

encoding="

UTF-8"

?

!

--

/*

*$Id$

*

*LicensedtotheApacheSoftwareFoundation(ASF)underone

*ormorecontributorlicenseagreements.SeetheNOTICEfile

*distributedwiththisworkforadditionalinformation

*regardingcopyrightownership.TheASFlicensesthisfile

*toyouundertheApacheLicense,Version2.0(the

*"

License"

);

youmaynotusethisfileexceptincompliance

*withtheLicense.YoumayobtainacopyoftheLicenseat

*http:

//www.apache.org/licenses/LICENSE-2.0

*Unlessrequiredbyapplicablelaworagreedtoinwriting,

*softwaredistributedundertheLicenseisdistributedonan

ASIS"

BASIS,WITHOUTWARRANTIESORCONDITIONSOFANY

*KIND,eitherexpressorimplied.SeetheLicenseforthe

*specificlanguagegoverningpermissionsandlimitations

*undertheLicense.

*/

--&

DOCTYPEstrutsPUBLIC

"

-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN"

http:

//struts.apache.org/dtds/struts-2.0.dtd"

struts&

beanclass="

com.opensymphony.xwork2.ObjectFactory"

name="

xwork"

/&

beantype="

struts"

org.apache.struts2.impl.StrutsObjectFactory"

com.opensymphony.xwork2.ActionProxyFactory"

com.opensymphony.xwork2.DefaultActionProxyFactory"

org.apache.struts2.impl.StrutsActionProxyFactory"

com.opensymphony.xwork2.util.ObjectTypeDeterminer"

tiger"

com.opensymphony.xwork2.util.GenericsObjectTypeDeterminer"

notiger"

com.opensymphony.xwork2.util.DefaultObjectTypeDeterminer"

org.apache.struts2.dispatcher.mapper.ActionMapper"

org.apache.struts2.dispatcher.mapper.DefaultActionMapper"

composite"

org.apache.struts2.dispatcher.mapper.Com

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1