JSP刷新页面表单重复提交问题解决办法分享 使用sessionID和时间戳作为标识,关键代码如下: 复制代码 代码如下:public class SswpdjAction extends BaseAction{    public String execute(){     /**业务代码**/     ................     //设置标识     this.setSessionToken();     //转到添加页面     return "toAdd";   }     public String reSave(){     if(this.token != null && this.token.equals(this.getSessionToken())){       /**设置新标识**/       this.setSessionToken();             /**业务代码**/       ..............       return "toAdd";     }else{       printWriter out = null;       try{         httpServletResponse.setContentType("text/html;charset=UTF-8");         out = httpServletResponse.getWriter();         out.println("");         out.flush();         }catch(IOException e){ e.printStackTrace(); }finally{ if(out != null){ out.close(); } }     } return null;  }} public class BaseAction extends ActionSupport{ /**jsp页面标识**/ protected String token; public String getToken(){ return token; } public void setToken(String token){ this.token = token; } public String getSessionToken(){ if(null != httpSession.getAttribute("Token")){ return httpSession.getAttribute("Token"); }else{ return null; } } /**标识生成**/ public void setSessionToken(){ String flag = useMd5(httpSession.getId() + System.currentTimeMillis()); httpSession.setAttribute("Token", flag); httpServletRequest.setAttribute("SessionToken", flag); } /**MD5加密**/ private String useMd5(String str){ byte[] bs = str.getBytes(); String result = null; try{ MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update(bs); result = md5.digest().toString(); }catch(NoSuchAlgorithmException e){ e.printStackTrace(); }finally{ } return result; }} JSP页面设置标识隐藏域: 复制代码 代码如下: