不少时候,咱们会自定义一个拦截器来替换struts2默认的拦截器,这时,咱们须要注意一些事项。 cookie
百度一下,咱们找到了默认拦截器的说明,以下: session
拦截器/Interceptor | 名字 | 说明 |
Alias | alias | 在不一样的请求之间将请求的参数在不一样的名称之间转换,请求的内容不变 |
Chaining | chain | 让前一个Action的属性能够变被后一个Action访问,如今和chain类型的result()结合使用 |
Checkbox | checkbox | 添加了checkbox自动处理代码,将没有选中的checkbox的内容设定为false,而HTML默认状况下不提交没有选中的checkbox |
Cookies | cookies | 使用配置的name ,value来指定cookies |
Conversion Error | conversionError | 将错误从ActionContext中添加到Action属性字段中 |
Create Session | createSession | 自动的建立HttpSession,用来为须要使用HttpSession的拦截器服务 |
Debugging | debugging | 提供不一样的调试用的页面来展示内部的数据状况 |
Execute and Wait | execAndWait | 在后台执行Action,同时将用户带到一个中间的等待页面 |
Exception | exception | 将异常定位到一个画面 |
File Upload | fileUpload | 提供文件上传功能 |
I18n | i18n | 记录用户选择的locale |
Logger | logger | 输出Action的名字 |
Message Store | store | 存储或者访问实现ValidationAware接口的Action类出现的消息、错误、字段错误等 |
Model Driven | model-driven | 若是一个类实现了ModelDriven,将getModel获得的结果放到Value Stack中 |
Scoped Model Driven | scoped-model-driven | 若是一个Action实现了Scoped Model Driven,这这个拦截器会从相应的scope中取出model调用Action中的setModel方法,将其放入Action内部 |
Parameters | params | 将请求的参数设置到Action中 |
Prepare | prepare | 若是Action实现了Preparable,则该拦截器会调用Action类的prepare方法 |
Scope | scope | 将Action状态存入session和application中的简单方法 |
Servlet Config | servletconfig | 提供访问HttpServletRequest和HttpServletResponse的方法,以Map的方式访问 |
Static Parameters | staticParams | 从struts.xml文件中将中的内容设置到对应的Action中 |
Roles | roles | 肯定用户是否具备JAAS指定的Role,不然不予执行 |
Timer | timer | 输出Action执行的时间 |
Token | token | 经过Token来避免双击 |
Token Session | tokenSession | 和Token同样,不过双击的时候将数据放到了session中 |
Validation | validation | 使用action-validation.xml文件中定义的内容校验提交的数据 |
Workflow | workflow | 调用Action的validate方法,一旦有错误返回,从新定位到INPUT页面 |
Parameter Filter | N/A | 从参数列表中删除没必要要的参数 |
Profiling | profiling | 经过参数激活profile |
其中,有一个名为params的拦截器,它的做用是“将请求的参数设置到Action中”,也就是说,若是你从页面中传值到Action,即拦截请求参数,并赋值给action里的属性,并且你自定义的拦截器要用到这些值栈中的值,则你的拦截器栈中,须要在自定义拦截器前面加上默认的拦截器,以下: app
<interceptor-ref name="params"/> <interceptor-ref name="myInterceptor"/>