application对象及其他
一、Application 对象
1、一个网站中的任一个JSP页面开始执行时,将产生一个application对象。直到服务器关闭时,application对象才会被撤消。不同的web应用将产生不同的application对象。在一个Web应用中的所有JSP页面,都将存取同一个application对象,即使浏览这些JSP页面的不是用一个客户。
2、保存于application对象的数据,不仅可以跨网页分享数据,更可以联机分享数据。所以,想要计算机某Web应用目前联机人数,利用application对象就可以达到目的。
二、application对象的常用方法
(1)public void setAttribute(String key, Object obj)
application对象可以调用该方法将参数Object指定的对象 obj添加到application对象中,并为添加的对象指定了一个索引关键字,如果添加的两个对象的关键字相同,则先前添加对象被清除。
(2)public Object getAttibue(String key)
获取application对象含有的关键字是key的对象。由于任何对象都可以添加到application对象中,因此用该方法取回对象时,应强制转化为原来的类型。
(3)public Enumeration getAttributeNames()
application对象调用该方法产生一个枚举对象,该枚举对象使用nextElemets()遍历application中的各个对象所对应的关键字。
(4)public void removeAttribue(String key)
从当前application对象中删除关键字是key的对象。
(5)public String getServletInfo()
application对象可以调用该方法获取Servlet编译器的当前版本的信息。
三、内置对象的作用域
1、Application Scope
存在时间最长,但同时也最耗系统资源。
2、Session Scope
每个用户请求访问服务器时一般就会创建一个session对象,待用户终止退出时该session对象消失。
3、Request Scope
在一个JSP页面向另一个JSP页面提出请求到请求完成之间存在。
4、Page Scope
只在当前页面有效。
四、out对象
1、out对象是一个输出流,用来向用户端输出数据。
2、out对象可调用如下的方法用于各种数据的输出
(1)out.print(Boolean),out.println(Boolean) 用于输出一个布尔值。
(2)out.print(char),out.println(char) 输出一个字符。
(3)out.print(double),out.println(double) 输出一个双精度的浮点数。
(4)out.print(float),out.println(float) 用于输出一个单精度的浮点数。
(5)out.print(long),out.println(long) 输出一个长整型数据。
(6)out.print(String),out.println(String) 输出一个字符串对象的内容。
(7)out.newLine() 输出一个换行符。
(8)out.flush() 输出缓冲区里的内容。
(9)out.close() 关闭流。
五、pageContext 对象
1、使用户可以访问页面作用域中定义的所有隐式对象
它的作用范围是在同一页面
javax.servlet.jsp.PageContext 类的实例
2、pageContext对象最常用的方法有:
void setAttribute(String name,Object value)
以键/值的方式,将一个对象的值存放到pageContext中
void getAttribute(String name)
根据名称去获取pageContext中存放对象的值