JSP application 内置对象
application内置对象
application对象用于保存所有应用程序中的公有数据。它在服务器启动时自动创建,在服务器停止时销毁。所有用户都可以共享该 application对象。与 session对象相比, application对象的生命周期更长,类似于系统的“全局变量”。
- application对象是 ServletContext类的实例。
- application开始于服务器的启动,终止于服务器的关闭。在此期间,application对象一直存在。
- 在用户的前后连接或不同用户之间的连接中,可以对 application对象的同一属性进行操作。
- 类似于java中的静态成员属于整个类而不属于对象一样,applicatioan对象属于整个服务器,而不是属于某一个项目。
- 在任何地方对 application对象属性的操作,都将影响到其他用户对此的访问。
- 服务器的启动和关闭决定了 application对象的生命。
访问应用程序初始化参数
设置应用程序初始化参数
application对象提供了对应用程序初始化参数进行访问的方法。应用程序初始化参数在 web.xml文件中进行设置, web.xm文件位于Web应用所在目录下的 WEB-INF子目录中。在 web.xm文件中通过<context-param>
标记配置应用程序初始化参数,如下所示:
1 | ...... |
获取初始化参数
在web.xml中设置好初始化参数后,就可以在JSP页面中获取这些初始化参数,
application对象提供了两种访问应用程序初始化参数的方法,下面分别进行介绍。
getlnitParameter()
列名 | 列名 |
---|---|
Enumeration<String> getInitParameterNames() |
获取所有初始化参数名称的枚举 |
String getInitParameter(String name) |
根据参数名称对应的参数值 |
实例:或是上述web.xml中设置的所有初始化参数
1 | <% |
显示效果:
1 | url=jdbc:mysql://127.0.0.1:3306/databaseName |
管理应用程序环境属性
与 session对象相同,也可以在 application对象中设置属性。与 session对象不同的是, session只是在当前客户的会话范围内有效,当超过保存时间, session对象就被收回;而 application对象在整个应用区域中都有效。 application对象管理应用程序环境属性的方法分别介绍如下
方法 | 描述 |
---|---|
void setAttribute(String name, Object value) |
设置属性 |
Object getAttribute(String name) |
取得属性名称对应的属性值,没有该属性则返回null |
Enumeration<String> getAttributeNames() |
取得session中所有属性名称的枚举 |
void removeAttribute(String name) |
移除属性名为name的属性 |
其他方法
方法 | 描述 |
---|---|
String getServerInfo() | 返回JSP(servlet)引擎名及版本号 |
实例
1 | <%@ page language="java" contentType="text/html; charset=utf-8"%> |
运行结果:
可以看到除了我们自己设置的几个属性之外,还有一些内置的属性。