打开jsp页面时自动增加准入编号
我确实根据页面的访问次数增加了入场号……但每次服务器重新启动时,入场号都会被初始化。这是一张申请表。我需要的是每次用户打开表单时,自动递增并显示在表单上的准入编号 我不熟悉java和jsp,请提供帮助。以下是代码:打开jsp页面时自动增加准入编号,jsp,servlets,Jsp,Servlets,我确实根据页面的访问次数增加了入场号……但每次服务器重新启动时,入场号都会被初始化。这是一张申请表。我需要的是每次用户打开表单时,自动递增并显示在表单上的准入编号 我不熟悉java和jsp,请提供帮助。以下是代码: <p>Admission for <input type= "radio" name="whichclass" id="wc1" value="daycare"> <label for="wc1">DayCare</label>
<p>Admission for
<input type= "radio" name="whichclass" id="wc1" value="daycare">
<label for="wc1">DayCare</label>
<input type="radio" name="whichclass" id="wc2" value="nursery">
<label for="wc2">Nursery</label>
<input type="radio" name="whichclass" id="wc3" value="pp1" >
<label for="wc3">PP1</label>
<input type="radio" name="whichclass" id="wc4" value="pp2">
<label for="wc4">PP2</label></p>
<%
//Get creation time
Date createTime = new Date(session.getCreationTime());
// Get last access time of this web page
Date lastAccessTime = new Date(session.getLastAccessedTime());
String title= "Welcome back";
Integer visitCount = new Integer(0);
String visitCountKey= new String("vistCount");
//Create a variable for Admission number
Integer adNumber = new Integer(20150);
String adNumberKey = new String("adNumber");
//Check if user is new
if(session.isNew())
{
String title1 = "Welcome to Application form";
session.setAttribute(visitCountKey, visitCount);
session.setAttribute(adNumberKey, adNumber);
}
visitCount= (Integer)session.getAttribute(visitCountKey);
visitCount= visitCount + 1;
adNumber= (Integer)session.getAttribute(adNumberKey);
adNumber = adNumber+1;
session.setAttribute(visitCountKey,visitCount);
session.setAttribute(adNumberKey, adNumber);
%>
<p>Admission number <input type="text" name="adNum" value= <%=adNumber %> /></p>
学生入学
托儿所
婴儿室
PP1
PP2
入场证号码
我从你的问题中了解到 大宗报价 您希望跟踪页面被浏览的次数,并每次生成一个表单编号(自动递增),但问题是,每当服务器重新启动时,该编号就会被重新初始化 大宗报价 首先,您使用会话来存储号码。会话对于每个用户都是特定的。不要使用它,因为对于不同的用户,不同的AdNumber将出现在他们的特定会话中。因此,最终可能会有两个不同的用户使用相同的adNumber 一个更好的方法是使用每个JVM的。这样所有用户只有一个adNumber(忽略并发和分布式系统) 但是,对于ServletContext,一旦重新启动服务器,计数也将重置 更好的方法是将ServletContext与数据库或基于文件的系统结合使用。每次计数增加时,如果数据库不可用,您可以将该值存储在数据库或文件中 当服务器重新启动时,您可以检查上下文中是否存在名为“adNumberKey”的属性,如果不存在,则从数据库或基于文件的源读取该值并将其加载到上下文对象中
希望能有帮助 将访问次数存储到数据库中解释非常有用…我将使用servletContext