application对象是一个比较重要的对象,服务器在启动后就会产生这个application对象,所有连接到服务器的客户端application对象都是相同的,所有的客户端共享这个内置的application对象,直到服务器关闭为止。
可以使用application对象来保存服务器运行时的全局数据,如页面的访问计数器等。
由于服务器启动后就产生了一个application对象,不论任何客户访问服务器的各个页面,使用的都是同一个application对象,可以通过application对象来做一个网站访问的计数器。
首先我们创建一个index.jsp页面,页面的代码如下:
<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>application对象实例</title>
</head>
<body>
<%
if (application.getAttribute("counter") == null) {
application.setAttribute("counter", "1");
} else {
String strnum = null;
strnum = application.getAttribute("counter").toString();
int icount = 0;
icount = Integer.valueOf(strnum).intValue();
icount++;
application.setAttribute("counter", Integer.toString(icount));
}
out.println("当前Web服务器的版本信息:" + application.getServerInfo() + "<br>");
out.println("当前Servlet API的主版本号:" + application.getMajorVersion() + "<br>");
out.println("当前Servlet API的次版本号:" + application.getMinorVersion() + "<br>");
out.println("当前Web应用程序的名称:" + application.getServletContextName() + "<br>");
out.println("当前Web应用程序的上下文路径:" + application.getContextPath() + "<br>");
out.println("您是第" + application.getAttribute("counter") + "位访问者!<br>");
%>
</body>
</html>
多次刷新页面后,最后一行的数字会不断增加。