struts2默认拦截器与自定义拦截器在使用时的注意事项

不少时候,咱们会自定义一个拦截器来替换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"/>
相关文章
相关标签/搜索