struts2由浅入深专题分享——interceptors 第一回 interceptor的种类及exception拦截器 by:丹恋耗

1.interceptor的种类

Dubugstruts2源码之后,对其有了一些初步的认识。

对照官方文档,了解了每个拦截器的作用,如下所示的默认拦截器栈:

<interceptor-stackname="defaultStack">

<interceptor-refname="exception"/>

<interceptor-refname="alias"/>

<interceptor-refname="servletConfig"/>

<interceptor-refname="i18n"/>

<interceptor-refname="prepare"/>

<interceptor-refname="chain"/>

<interceptor-refname="scopedModelDriven"/>

<interceptor-refname="modelDriven"/>

<interceptor-refname="fileUpload"/>

<interceptor-refname="checkbox"/>

<interceptor-refname="multiselect"/>

<interceptor-refname="staticParams"/>

<interceptor-refname="actionMappingParams"/>

<interceptor-refname="params">

<paramname="excludeParams">dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,parameters\...*</param>

</interceptor-ref>

<interceptor-refname="conversionError"/>

<interceptor-refname="validation">

<paramname="excludeMethods">input,back,cancel,browse</param>

</interceptor-ref>

<interceptor-refname="workflow">

<paramname="excludeMethods">input,back,cancel,browse</param>

</interceptor-ref>

<interceptor-refname="debugging"/>

</interceptor-stack>

比如针对其中较为主要的几个拦截器进行了源码分析:exception、alias、chain、params。由于拦截器栈里的拦截器是从上往下的顺序执行的,因此我们在自定义拦截器的时候也需注意。

2.对exception拦截器的初步了解

理解的过程中,比较关注的拦截器之一是异常拦截器。

在网上看到了一篇关于java异常处理的文章,现分享点击打开链接,其讲述的原理如下图所示:



异常的分类有:Throwable的子类有Error与Exception,而Exception又分为运行时异常与非运行时异常。

以上-> ->感谢basil的贡献。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值