JSP重複提交的研究

來源:互聯網
上載者:User
JSP 頁面不能重新整理、防止重新整理的問題總結 <1>如果要求當發生選擇、刪除、修改等操作時,表單重新整理,需要加上: window.returnValue=0 . 例如leadership/leader_ctl.jsp
< body leftmargin = "0" topmargin = "0" > <%@ page contentType = "text/html; charset=gb2312" language = "java" import = "java.sql.*" errorPage = "" %> <%@ page import = "leader.*" %> <%         LeaderBean leader= new LeaderBean();     String strUserID=request.getParameter( "Key" );     session.setAttribute( "EmployUserID" ,strUserID);     //System.out.println("strUserID:"+strUserID);     if (leader.PostEdit(request)){        //System.out.println("me5");        out.println( "<script>window.returnValue=0;window.close();</script>" );        return ;     }     else {        if (request.getParameter( "Oper" )!= null ){          if (request.getParameter( "Oper" ).equals( "delLeader" )){           out.println( "<script>alert('" +leader.LastOperMsg+ "');window.returnValue=0;</script>" );             //return;         }         if (request.getParameter( "Oper" ).equals( "setLeader" )){              //System.out.println("me3");              out.println( "<script>alert('" +leader.LastOperMsg+ "');window.returnValue=0;window.close();</script>" );             //System.out.println("me4");             //return;         }         if (request.getParameter( "Oper" ).equals( "delCompetence" )){            ////System.out.println("strUserID:"+strUserID);              out.println( "<script>alert('" +leader.LastOperMsg+ "');history.back();</script>" );             //System.out.println("me4");             //return;         }         if (request.getParameter( "Oper" ).equals( "addCompetence" )){              //System.out.println("addCompetence1");              out.println( "<script>alert('" +leader.LastOperMsg+ "');history.back();</script>" );             //System.out.println("addCompetence2");             //return;         }         else {          if (request.getParameter( "Oper" ).equals( "qx" )){                out.println( "<script>alert('" +leader.LastOperMsg+ "');window.returnValue=0;window.close();</script>" );               //return;            }            else {                //System.out.println("me6");               out.println( "<script>alert('" +leader.LastOperMsg+ "');window.close();</script>" );                //return;            } //3e         }        }     }   %>
<2>如果要求每隔一段時間從伺服器上自動重新整理,需要加上: (1)       種方法: <%response.setHeader("Refresh","15");%>
15 妙重新整理一次 (2)       種方法: 自動重新整理網頁
在 HTML 的與之間加入下面這段代碼,則在 5 分鐘之後正在瀏覽的頁面將會自動變為 target.html 這一頁。代碼中 300 為重新整理的延遲時間,以秒為單位。 targer.html 為你想轉向的目標頁 , 若為本頁則為自動重新整理本頁。 <meta http-equiv="refresh" content="300; url=target.html">   (3)       種方法: 示範效果:本頁將在規定的時間自動重新整理,代碼提示:將下面的代碼複製到〈head〉區
<script> <!-- var limit="0:15"// 修改重新整理時間   if (document.images){ var parselimit=limit.split(":") parselimit=parselimit[0]*60+parselimit[1]*1 } function beginrefresh(){ if (!document.images) return if (parselimit==1) window.location.reload() else{ parselimit-=1 curmin=Math.floor(parselimit/60) cursec=parselimit%60 if (curmin!=0) curtime=curmin+" 分 "+cursec+" 秒後重刷本頁。 " else curtime=cursec+" 秒後重刷本頁。 " window.status=curtime setTimeout("beginrefresh()",1000) } } window.onload=beginrefresh //--> </script>
  <2>防止從伺服器上自動重新整理,需要加上:
<%@ page contentType="text/html;charset=gb2312"%><%@ page language="java" import="java.io.*"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title> 計數器 </title></head><%!// 同步更新計數器     synchronized void counter(){        ServletContext application=getServletContext();       // 構造 application 對象(可選)         String szPath=application.getRealPath("/");               // 得到當前路徑         szPath=szPath+"hits.txt";                                       // 計數器檔案 0-9999999999999...  
方案2
j J sp 計數器,同一電腦10秒內防重新整理 <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR"   http-equiv="refresh"     >
<title> 無標題文檔</title>
<link href="css/counter.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF">
<!--start counter  -->
<div align="center">
  <%@ page import="com.ckj.counter.*,java.io.*,java.util.Date"%>
  <%Counter ct=new Counter();
    String  count="0";
    String counterid="0";
   try{
   // String  strDirPath  =  new  File(application.getRealPath(request.getRequestURI())).getParent(); 
   //System.out.println("目錄的絕對路徑:"  +  strDirPath  +  "<br/>");
   String  strFullPath  =  session.getServletContext().getRealPath("/"); 
   System.out.println(strFullPath);
      ct.path=strFullPath+"/counter/count.txt";
  //1 session儲存時間值,
  //2 下次比較一下
  if(session.getAttribute("counttime")==null ){ //如果 初次訪問
   count=ct.doCount();
  // System.out.println("--------計算前11--------"+System.currentTimeMillis());
   session.setAttribute("counttime",String.valueOf(System.currentTimeMillis()));}
   else
   { //如果,重新整理間隔超過
     //System.out.println("--------重新整理之差--------"+(System.currentTimeMillis()- L
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.