`
lu2002lulu
  • 浏览: 95326 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts2的防止重复提交

阅读更多
使用方法: 看看我们项目的例子



1. 首先在struts的配置文件中 给你的action 加上 token 过滤器






Xml代码

<!-- 用户 -->  
     <action name="user" class="UserAction">  
        <!-- 用户列表 -->  
       <result name="userList">/page/user/userlist.jsp</result>  
        <!-- 添加用户 -->  
           <result name="add">/page/success.jsp</result>  
        <!-- 删除用户 -->  
        <result name="del">user!queryAll.action</result>       
        <!-- 转向修改用户信息 -->  
        <result name="toUpdate">/page/user/updateuser.jsp</result>  
       <!-- 转向添加用户页面 -->  
        <result name="toAdd">/page/user/adduser.jsp</result>  
          
        <!-- 防止重复提交 -->  
       <result name="invalid.token">/page/error.jsp?message=重复提交</result>     
        <interceptor-ref name="defaultStack"/>  
           <interceptor-ref name="token">  
                <param name="includeMethods">addUser</param>    
            </interceptor-ref>  
             
   </action>  





注意:

a.includeMethods  指定 需要拦截的方法   excludeMethods 指定 不需要拦截的方法 ,多个方法使用 逗号分隔



b. 当 拦截器拦截到 当发生重复提交的action 时候 会跳转到 invalid.token 指定的页面

c. 为了使用 统一的错误页面,在错误页面上接受到 message 参数的值 可以在 error.jsp 使用 ${param['message']}





2. 在提交页面的 form 中增加 <s:token/>  标签  ,需要在页面 中加上



<%@ taglib uri="/struts-tags" prefix="s"%>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics