佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > JSP刷新頁面表單重復(fù)提交問題解決辦法分享

JSP刷新頁面表單重復(fù)提交問題解決辦法分享

熱門標簽:科大訊飛語音識別系統(tǒng) Linux服務(wù)器 Mysql連接數(shù)設(shè)置 團購網(wǎng)站 阿里云 服務(wù)器配置 銀行業(yè)務(wù) 電子圍欄

使用sessionID和時間戳作為標識,關(guān)鍵代碼如下:

復(fù)制代碼 代碼如下:

public class SswpdjAction extends BaseAction{

      public String execute(){
        /**業(yè)務(wù)代碼**/
        ................
        //設(shè)置標識
        this.setSessionToken();
        //轉(zhuǎn)到添加頁面
        return "toAdd";
      }
  
      public String reSave(){
        if(this.token != null this.token.equals(this.getSessionToken())){
          /**設(shè)置新標識**/
          this.setSessionToken();
      
          /**業(yè)務(wù)代碼**/
          ..............
          return "toAdd";
        }else{
          printWriter out = null;
          try{
            httpServletResponse.setContentType("text/html;charset=UTF-8");
            out = httpServletResponse.getWriter();
            out.println("script>alert('刷新提交表單!');/script>");
            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頁面設(shè)置標識隱藏域:

復(fù)制代碼 代碼如下:

form>
  input type="hidden" name="token" value="${SessionToken}" />
/form>

您可能感興趣的文章:
  • js防止表單重復(fù)提交的兩種方法
  • javascript下阻止表單重復(fù)提交、防刷新、防后退
  • js防止表單重復(fù)提交實現(xiàn)代碼
  • js控制再次點擊按鈕之間的間隔時間可防止重復(fù)提交
  • JSP防止網(wǎng)頁刷新重復(fù)提交數(shù)據(jù)的幾種方法
  • JavaScript實現(xiàn)點擊按鈕后變灰避免多次重復(fù)提交
  • JS Ajax請求如何防止重復(fù)提交
  • jsp 重復(fù)提交問題
  • 一個JavaScript防止表單重復(fù)提交的實例
  • 前端防止用戶重復(fù)提交js實現(xiàn)代碼示例

標簽:廣元 大理 衡水 江蘇 棗莊 萍鄉(xiāng) 蚌埠 衢州

巨人網(wǎng)絡(luò)通訊聲明:本文標題《JSP刷新頁面表單重復(fù)提交問題解決辦法分享》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    合作市| 家居| 德庆县| 青河县| 凌云县| 富锦市| 巨鹿县| 万全县| 彭水| 灵宝市| 句容市| 隆安县| 东台市| 华蓥市| 宁安市| 南城县| 老河口市| 隆德县| 北碚区| 林周县| 尼勒克县| 连城县| 丰都县| 大连市| 桐柏县| 洪江市| 阿巴嘎旗| 兴海县| 裕民县| 双桥区| 沙洋县| 南阳市| 龙泉市| 永康市| 高平市| 固安县| 株洲县| 诸城市| 承德县| 邵东县| 正蓝旗|