服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

如何设置application 变量


  application变量是对一个web application有效的全局变量,在保存一些全局有效的值时非常有用。与session变量不同,application变量可以用application.getattribute()和application.setattribute()来访问。

在jsp中,可以自动引用application变量,指代当前的web 应用。(有关web 应用,我将在另外的地方讨论。)

在引用application 变量时,必须使用同步。并且,需要测试一个application属性是否已经存在。请仔细研究下面的代码,在下面,设置了一个叫“change"的application 属性,保存一个整型值。关于在servlet中使用application变量,方法与下面的代码一致,不过,需要先说明一个application如下:

servletcontext application=getservletcontext();

后面的一段函数是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("</table>");



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("</table>");

}



%>



<html>

<head><title>counter</title></head>

<body bgcolor=#ffffff>



<h1>welcome, visitor: <%= count %></h1>



</body>

</html>

扫描关注微信公众号