怎么設(shè)置application 變量
發(fā)表時(shí)間:2023-08-07 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]application變量是對(duì)一個(gè)web application有效的全局變量,在保存一些全局有效的值時(shí)非常有用。與session變量不同,application變量可以用application.g...
application變量是對(duì)一個(gè)web application有效的全局變量,在保存一些全局有效的值時(shí)非常有用。與session變量不同,application變量可以用application.getAttribute()和application.setAttribute()來訪問。
在JSP中,可以自動(dòng)引用application變量,指代當(dāng)前的web 應(yīng)用。(有關(guān)web 應(yīng)用,我將在另外的地方討論。)
在引用application 變量時(shí),必須使用同步。并且,需要測試一個(gè)application屬性是否已經(jīng)存在。請(qǐng)仔細(xì)研究下面的代碼,在下面,設(shè)置了一個(gè)叫“change"的application 屬性,保存一個(gè)整型值。關(guān)于在servlet中使用application變量,方法與下面的代碼一致,不過,需要先說明一個(gè)application如下:
servletContext application=getServletContext();
后面的一段函數(shù)是env.java的片斷,可以看看在servlet中如何使用application變量的。
Integer count = null;
synchronized (application) {
count = (Integer) application.getAttribute("change");
if (count == null)
count = new Integer(0);
count = new Integer(count.intValue() + 1);
application.setAttribute("change", count);
}
private void printApplication(PrintWriter pw, HttpServletRequest req)
throws IOException
{
ServletContext application = getServletContext();
pw.println("<h1>Application Information:</h1>");
pw.println("<table>");
pw.print("<tr><td>Major Version<td>");
pw.println(application.getMajorVersion());
pw.print("<tr><td>Minor Version<td>");
pw.println(application.getMinorVersion());
pw.print("<tr><td>Server Info<td>");
pw.println(application.getServerInfo());
pw.print("<tr><td>Real Path (of pathinfo)<td>");
pw.println(application.getRealPath(req.getPathInfo()));
pw.print("<tr><td>Mime-type (of pathinfo)<td>");
pw.println(application.getMimeType(req.getPathInfo()));
pw.println("");
pw.println("<h1>Application Variables:</h1>");
pw.println("<table>");
Enumeration e = application.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String) e.nextElement();
pw.print("<tr><td>");
pw.print(name);
pw.print("<td>");
pw.println(application.getAttribute(name));
}
pw.println("");
}
%>
<html>
<head><title>Counter</title></head>
<body bgcolor=#ffffff>
<h1>Welcome, visitor: <%= count %></h1>
</body>
</html>