struts2中拦截器使用

struts2中拦截器使用

ID:15397641

大小:55.00 KB

页数:11页

时间:2018-08-03

struts2中拦截器使用_第1页
struts2中拦截器使用_第2页
struts2中拦截器使用_第3页
struts2中拦截器使用_第4页
struts2中拦截器使用_第5页
资源描述:

《struts2中拦截器使用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、注:本文章摘自网络今天给几个热爱JAVA的同学们讲了Struts2的一些知识,重点讨论了其最具价值的拦截器。 不知道大家还记不记得,在《Struts2之服务器端验证》里我说过这样一句话“在到达LoginAction之前,验证已经完成了”。我很希望有人能提出这是为什么,这样我就可以说,这是拦截器的功劳,我们就可以研究拦截器了。 其实,拦截器并不难,也不是十分难懂的东西。在这里再做一些补充. 打开帮助文档(struts-2.0.6\docs\docs\interceptors.html)的拦截器部分。 能读懂英文技术文档

2、是程序员必备的基本素质之一,慢慢来吧,只要静下心来逐字逐句的推敲,没有什么理解不了的。实在看不懂,那就看看[ActionLifecyle]这张图吧。Action生命周期,Action被一些拦截器包围着,也就是说在Action执行之前或之后,拦截器会被执行。 这就是拦截器,把程序看作是一个顺序执行的流,在执行Action的代码之前或之后,拦截器会打断Action的执行,让程序先执行拦截器的代码,这也许就是为什么把它叫做拦截器的原因。有的时候,拦截器还会阻止Action的执行,比如说在验证失败的情况下,应该让程序返回到输入界面

3、让用户重新输入。 从图上还可以看出,一个Action之外不是只有一个拦截器,那么先执行哪个拦截器呢?Struts2把多个拦截器放在了一个栈中,我们把它叫做拦截器栈。一方面,栈可以解决拦截器的执行顺序问题,另一方面,把相关的拦截器放在一个栈中,管理起来也比较方便。 Struts2的一个优点是它的可配置性,我们可以根据实际情况选择需要的功能。当然也给我们带来了一些麻烦,就拿拦截器来说吧,要想让拦截器起作用,先要对它进行配置。配置拦截器,需要在struts.xml中加入相关配置:

4、ends="struts-default">                                                     

5、eptor-refname="logger"/>           login.jsp           /secure/home     =====================================================================

6、ptors>和标记对表示要配置一些拦截器,里面的每一条是一个拦截器。 interceptor表示这是一个拦截器,name属性是给它起一个名字,class属性是指出它的实现类,也是代码的实际位置。 拦截器是拦截Action的,当然也要在Action的配置里加入对它的引用,指出这个Action要使用哪个拦截器。 这句话是告诉Struts框架,loginAction需要

7、使用前面的timer拦截器。 有人也许会说,我们之前并没有配置拦截器,但刚才好像说过,不是也使用到拦截器了么?的确,可能是Struts2的开发者怕配置起来太麻烦了,没有人用吧:P,所以给我预先配置好了一些默认的拦截器和拦截器栈。 在struts-default.xml(struts-default.xml在struts2-core-2.0.6.jar包中)里面定义了很多拦截器:

8、erceptor"/>......里面的validation和i18n就是我们之前用的验证和国际化功能。 还有很多拦截器栈:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。