解决方法:
方法一:采用session对象
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>统计网页访问次数</title>
</head>
<body>
<%
int number=0;
//从session对象中获取number
Object obj=session.getAttribute("number");
if(obj==null){
//设定session对象中的number变量
session.setAttribute("number", String.valueOf(number));
}else{
//取得session对象中的number变量
number=Integer.parseInt(obj.toString());
//统计页面的访问次数
number+=1;
//设定session对象中的number变量
session.setAttribute("number", String.valueOf(number));
}
%>
<br>
<div align="center">
<table>
<tr>
<th>第<%=number %>个用户访问本站</th>
</tr>
</table>
</div>
</body>
</html>
方法二:采用application对象
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>使用application统计网页访问次数</title>
</head>
<body>
<%
int number=1;
//获取一个Object对象
String strNum=(String)application.getAttribute("number");
//如果一个Object对象存在,说明有用户访问
if(strNum!=null)
//类型转化后值加1
number=Integer.parseInt(strNum)+1;
//数值加1后重新对number赋值
application.setAttribute("number", String.valueOf(number));
%>
<br>
<div align="center">
<table>
<tr>
<th>第<%=application.getAttribute("number") %>个用户访问本站</th>
</tr>
</table>
</div>
</body>
</html>
Session对象和application对象的区别在于:使用session对象时,一个客户对应一个session对象,而application对象为多个应用程序保存信息,对于同一个容器而言,在同一个服务器中的多个JSP文件共享同一个application对象