基于Struts的防止页面重复提交的代码片段

基于Struts的防止页面重复提交的代码片段
1、在进入增加和编辑页面的action方法(如action的add方法)中,增加如下代码:
    //防止重复提交.
   
saveToken(request);

2、在进行数据保存操作的action的方法中(如save方法),增加如下代码:
   
if ( ! isTokenValid(request)) {
        ActionMessages messages 
=   new  ActionMessages();

        messages.add(ActionMessages.GLOBAL_MESSAGE,
            
new  ActionMessage( " error.submit.double " ));
        saveMessages(request.getSession(), messages);
        
        
// 如果是重复提交,重新生成token
        saveToken(request);
        
        
return  mapping.findForward( " edit " );
    }
    
    
// 不是重复提交就保存数据,并删除该次提交的token
    resetToken(request);

3、在编辑记录的jsp页面,使用<html:errors />标签,显示错误提示。

你可能感兴趣的:(基于Struts的防止页面重复提交的代码片段)