struts中拦截器防止表单重复提交
2012-10-20 22:35
344 查看
由于某些原因,用户在进行类似表单提交的操作后,以为表单未被提交,会进行多次的重复提交。为了避免用户多次提交给服务器带来负荷。我们会对表单提交这样的操作进行一些处理,以告诉用户不要重复提交。
第一步:使用<s:token></s:token>标签:
登录页面中的关键技术就是使用了标签库中的<s:token></s:token>标签,它的作用就是在用户访问此页面时会生成一个sessionId,在提交时会服务器会据此验证表单是否已提交,提交到的Action便能配置TokenInterceptor拦截器验证表单是否重复提交。
第二步:配置XML文件
<resultname="success">/success.jsp</result>
<!-- 表单重复提交时进入的视图 -->
<resultname="invalid.token">/subError.jsp</result>
<!-- 防止表单重复提交的拦截器 -->
<interceptor-refname="token"></interceptor-ref>
<interceptor-refname="defaultStack"></interceptor-ref> //引用默认的拦截器
此Action下,我们配置了token拦截器,另注意到在此Action下我们还配置了一个“invalid.token”result,提交时服务器如果根据token标签产生的sessionId判断出表单已提交,它则返回invalid.token指向的视图。比如这里,如果重复提交则会转到.../subError.jsp中去。另不要忘记了引入默认的拦截器栈。
第一步:使用<s:token></s:token>标签:
登录页面中的关键技术就是使用了标签库中的<s:token></s:token>标签,它的作用就是在用户访问此页面时会生成一个sessionId,在提交时会服务器会据此验证表单是否已提交,提交到的Action便能配置TokenInterceptor拦截器验证表单是否重复提交。
第二步:配置XML文件
<resultname="success">/success.jsp</result>
<!-- 表单重复提交时进入的视图 -->
<resultname="invalid.token">/subError.jsp</result>
<!-- 防止表单重复提交的拦截器 -->
<interceptor-refname="token"></interceptor-ref>
<interceptor-refname="defaultStack"></interceptor-ref> //引用默认的拦截器
此Action下,我们配置了token拦截器,另注意到在此Action下我们还配置了一个“invalid.token”result,提交时服务器如果根据token标签产生的sessionId判断出表单已提交,它则返回invalid.token指向的视图。比如这里,如果重复提交则会转到.../subError.jsp中去。另不要忘记了引入默认的拦截器栈。
相关文章推荐
- struts 拦截器设置防止表单的重复提交
- struts 拦截器设置防止表单的重复提交
- 拦截器springmvc防止表单重复提交【2】
- struts_05 各种验证器,ognl表达式,struts2常用标签,防止表单重复提交,jfreeChart插件的运用
- 防止表单的重复提交【利用Struts1的TokenProcessor源码】
- Struts2中防止表单重复提交的两种方式及token拦截器的原理及作用
- 《struts---利用Token防止表单重复提交》
- struts--token防止表单重复提交(源码分析)
- 7、struts2 案例( 模型驱动、 防止表单重复提交--拦截器 、数据回显 、值栈 、 OGNL表达式综合运用)
- Struts2——"token"拦截器(防止表单重复提交)
- struts防止用户重复提交表单
- Struts2.1 annotation防止表单重复提交
- 防止表单重复提交(拦截器)一些struts2标签的使用
- Spring MVC拦截器+注解方式实现防止表单重复提交
- 防止重复提交表单---Struts中Token的使用方法
- springmvc 拦截器 防止重复提交表单
- Struts2.1 annotation防止表单重复提交
- JAVAWEB开发之Struts2详解(四)——ognl与valueStack(重点)、Struts常用标签、防止表单重复提交、Struts2中内置json插件
- 拦截器springmvc防止表单重复提交【3】自己实际项目
- Spring MVC拦截器+注解方式实现防止表单重复提交