在服务器端判断表单是否重复提交,主要可以考虑在页面之间通过Session共享标志变量的方法来实现,即在客户端页面设置Session中的标志变量,然后在服务器段对Session中的标志变量进行判断。
1.新建一个ServerTest.jsp文件,代码如下:
<%@ page language="java" contentType="text/html; charset=Gb2312"
 pageEncoding="Gb2312"%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "/TR/html4/loose.dtd">
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=GB2312">
 <title>提交页面</title>
 </head>
 <%
 //设置标志变量SubmitFlag值ServerTest.jsp
 session.putValue("SubmitFlag","ServerTest.jsp");
 %>
 <body bgcolor="#ffffff">
 <form name="form_client" action="ServerSubmit.jsp">
 <input type="checkbox" name="check_1" checked=true/>人在江湖
 <input type="submit" name="submitok"/>
 </form>
 </body>
 </html>
2.新建一个ServerSubmit.jsp,代码如下:
<%@ page language="java" contentType="text/html; charset=Gb2312"
 pageEncoding="Gb2312"%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "/TR/html4/loose.dtd">
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=Gb2312">
 <title>服务器端程序</title>
 <%
 String PageFlag;
 PageFlag=(String) session.getValue("SubmitFlag");
 if(PageFlag=="Over"){
 out.println("重复提交页面!");
 }else{
 //设置标志变量SubmitFlag值为Over,表示已经提交
 session.putValue("SubmitFlag","Over");
 out.println("正常业务逻辑处理...请等待!!!");
 }
 %>
 </head>
 <body>
 </body>
 </html>
3.单击“提交查询内容”后,单击“后退”,再次单击“提交查询内容”按钮就会提示重复提交错误。