application对象的使用

application对象的使用

制作人:全心全意

  application对象用于保存所有应用程序中的公有数据。它在服务器启动时自动创建,在服务器停止时销毁。当application对象没有被销毁时,所有用户都可以共享该application对象。与session对象相比,application对象的生命周期更长,类似于系统的“全局变量”。

  • 访问应用程序初始化参数

  application对象提供了对应用程序初始化参数进行访问的方法。应用程序初始化参数在web.xml文件中进行设置,web.xml文件位于Web应用所在目录下的WEB-INF目录中。在web.xml文件中通过<context-param>标记配置应用程序初始化参数。

  application.getInitParameter()方法:返回已命名的参数值。

  application.getInitParameter(String name);

   参数说明:

    name:用于指定application对象中的对象名

 

  application.getInitParameterNames()方法:返回所有已定义的应用程序初始化参数名的枚举。

  application.getInitParameterNames();

  

  实例:

在WEB-INF目录中定义web.xml文件,添加如下内容: 

<web-app>
	<context-param>
		<param-name>url</param-name>
		<param-value>jdbc:mysql://127.0.0.1:3306/db_quanxinquanyi</param-value>
	</context-param>
</web-app>

index.jsp页面:获取application对象中对象名为url的内容并输出,获取当前所有已定义的应用程序初始化参数名的枚举并迭代输出

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
 <%@ page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>获取application对象中的内容</title>
</head>
<body>
<%
	String text = application.getInitParameter("url");  //获取application对象中对象名为url的内容
%>
<%=text %>
<br>
<%
	Enumeration enema = application.getInitParameterNames();	//获取当前所有已定义的应用程序初始化参数名的枚举
	while(enema.hasMoreElements()){
		String name = (String)enema.nextElement();
		String value = application.getInitParameter(name);
		out.println(name + ":");
		out.println(value);
	}
%>
</body>
</html>

  

  • 管理应用程序环境属性

  与session对象相同,也可以在application对象中设置属性。与session对象不同的是,session只是在当前客户的会话范围内有效,当超过保存时间,session对象就被收回;而application对象在整个应用区域中都有效。

  application.getAttributeNames()方法:获得所有application对象使用的属性名。

  application.getAttribute(String name)方法:从application对象中获取指定对象名。

  application.setAttribute(String key,Object obj)方法:使用指定名称和指定对象在application对象中进行关联。

  application.removeAttribute(String name)方法:从application对象中去掉指定名称的属性。

posted @ 2018-09-10 21:41  全心全意_运维  阅读(881)  评论(0编辑  收藏  举报