IT兄弟连 JavaWeb教程 JSP内置对象2
application对象
application对象用于保存所有应用程序中的公有数据。它在服务器启动时自动创建,在服务器关闭时销毁,当application对象没有被销毁时,所有用户都可以共享application对象,与session对象相比,application对象的声明周期更长,类似于系统的"全局变量"。
1.访问应用程序初始化参数
application对象提供了对应用程序初始化参数进行访问的方法。应用程序初始化参数在web.xml文件中进行设置,web.xml文件位于Web应用所在目录下的WEB-INF子目录中,在web.xml文件中通过<context-param>标签配置应用程序初始化参数。
application对象提供了两种访问应用程序初始化参数的方法,下面分别进行介绍。
(1)getInitParameter()方法
该方法用于返回已命名的参数值。其语法格式如下:
application.getInitParameter(String name);
参数说明:
name:用于指定参数名。
(2)getAttributeNames()方法
该方法用于返回所有已定义的应用程序初始化参数名的枚举。其语法格式如下:
application.getAttributeNames();
2.管理应用程序环境属性
与session对象相同,也可以在application对象中设置属性,与session对象不同的是,session只是在当前客户的会话范围内有效,当超过保存时间,session对象就被收回;而application对象在整个应用区域中都有效,application对象管理应用程序环境属性的方法分别介绍如下:
(1)getAttributeNames():获得所有application对象使用的属性名。
(2)getAttribute(String name):从application对象中获取指定对象名。
(3) setAttribute(String key,Object object):使用指定名称和指定对在application对象中进行关联。
(4)removeAttribute(String name):从application对象中去掉指定名称的属性。
out对象
out对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。在使用out对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其它的输出让出缓冲区空间,待数据输出完毕后,要及时关闭输出流。
1.向客户端输出数据
out对象一个最基本的应用就是想客户端浏览器输出信息。out对象可以输出各种数据类型的数据。在输出非字符串类型的数据时,会自动转换为字符串进行输出。out对象提供了print()和println()两种向页面输出信息的方法,下面分别进行介绍。
(1)print()方法
print()方法用于向客户端浏览器输出信息。通过该方法向客户端浏览器输出信息与使用JSP表达式输出信息相同。
(2)println()方法
println()方法也是用于向客户端浏览器输出信息,与print()方法不同的是,该方法在输出内容后,还会输出一个换行符。
2.管理响应缓冲
out对象的另一个比较重要的功能就是对缓冲区进行管理。通过调用out对象的clear()方法可以清除缓冲区的内容。这类似于重置响应流,以便重新开始操作。如果响应已经提交,则会有产生IOException异常的副作用。out对象还提供了另一种清除缓冲区内容的方法,那就是clearBuffer()方法,通过该方法可以清除缓冲区的"当前"内容,而且即使内容已经提交给客户端,也能够访问该方法。除了这两个方法外,out对象还提供了其他用于管理缓冲区的方法。out对象用于管理缓冲区的方法如下所示:
(1)clear():清除缓冲区中的内容
(2)clearBuffer():清除当前缓冲区的内容
(3)flush():刷新流
(4)isAutoFlush():检测当前缓冲区已满时是否自动清空,还是抛出异常
(5)getBufferSize():获取缓冲区的大小
获取会话范围的pageContext对象
获取页面上下文的pageContext对象是一个比较特殊的对象,通过它可以获取JSP页面的request、response、session、application、exception等对象。pageContext对象的创建和初始化都是都是由容器完成的,JSP页面中可以直接使用pageContext对象,pageContext对象的床用方法如下:
● forward(String path):把页面转发到另一个页面
● getAttribute(String name):获取参数值
● getAttributeNamesInScope(int scope):获取某范围的参数名称的集合
● getException():返回exception对象
● getRequest():返回request对象
● getResponse():返回response对象
● getSession():返回session对象
● getOut():返回out对象
● getApplication():返回application对象
● setAttribute(String name,Object object):为指定范围内的属性设置属性值
● removeAttribute():删除指定范围内的指定属性
IT兄弟连 JavaWeb教程 JSP内置对象2的更多相关文章
- IT兄弟连 JavaWeb教程 JSP内置对象经典面试题
1.请说明cookie.request.session.application的作用域和声明周期? 并说明它们适用与什么场景? request的生命周期是一次请求.可以用于JSP表单提交数据. ses ...
- IT兄弟连 JavaWeb教程 JSP内置对象1
JSP内置对象定义 JSP提供了由容器实现和管理的内置对象,也可以称之为隐含对象,这些内置对象不需要通过JSP页面编写来实例化,在所有的JSP页面中都可以直接使用,它们起到了简化页面的作用,JSP的内 ...
- IT兄弟连 JavaWeb教程 JSP内置对象3
读取web.xml配置信息的config对象 config对象主要用于取得服务器的配置信息.通过pageContxt对象的getServletConfig()方法获取一个config对象.当一个Ser ...
- IT兄弟连 JavaWeb教程 JSP内置对象经典案例
案例需求:使用MVC模式编写一个程序当发起一个deptList.do请求时在servlet中准备一个部门列表对象,把这个列表对象放入request作用域中,然后转发到deptlist.jsp,使用js ...
- JavaWeb学习----JSP内置对象详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础
JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次 ...
- JavaWeb基础-Jsp内置对象
request对象 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应,它是HttpServlteRequest类的实例.Request对象具有请求域,即完成客户端 ...
- JavaWeb——JSP内置对象application,JSP属性范围
application application语法 application对象 JSP属性范围 范围的分类 page request session application pagecontext延伸 ...
- JavaWeb——JSP内置对象request,response,重定向与转发 学习总结
什么是JSP内置对象 九大内置对象 requestJSP内置对象 request对象常用方法 request练习 responseJSP内置对象 response练习 response与request ...
随机推荐
- 【BZOJ2795】[Poi2012]A Horrible Poem hash
[BZOJ2795][Poi2012]A Horrible Poem Description 给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节.如果字符串B是字符串 ...
- Thread join方法的用途
主线程中会创建多个子线程做一些事情,主线程要用到这些子线程处理的数据,因此它需要等待所有的子线程处理完之后才继续运行.这就要用到join方法了.
- Spark SQL includes a cost-based optimizer, columnar storage and code generation to make queries fast.
https://spark.apache.org/sql/ Performance & Scalability Spark SQL includes a cost-based optimize ...
- 升级python到最新2.7.13
python2.7是2.X的最后一个版本,同时也加入了一部分3.X的新特性.并且具有更好的性能,修改多个bug.所以决定升级到最新的2.7版,我的目前的版本是2.6.6 查看当前python版本 # ...
- [NOIP2011提高组day2]-1-计算系数
1.计算系数 (factor.cpp/c/pas) [问题描述] k n m给定一个多项式(ax+by)^k ,请求出多项式展开后(x^n)*(y^m)项的系数. [输入] 输入文件名为 factor ...
- HDU5950 Recursive sequence —— 矩阵快速幂
题目链接:https://vjudge.net/problem/HDU-5950 Recursive sequence Time Limit: 2000/1000 MS (Java/Others) ...
- hex2bin
typedef BYTE unsigned char; </pre><pre code_snippet_id="1639451" snippet_file_nam ...
- Apktool 和 Jeb 给出的不同的smali语法
今天发现用Apktool和Jeb反编译出来的smali在语法上有一定区别,比如一个Java函数: private void packageNameCheck() { com.example.testf ...
- Exception in thread “main” java.sql.SQLException: The server time zone value ‘�й���ʱ��’ is unrecognized or represents more than one time zone.
Exception in thread “main” java.sql.SQLException: The server time zone value ‘�й���ʱ��’ is unrecogn ...
- 五、怎样修改oracle某个用户的密码
1.键入命令:sqlplus / as sysdba 2.在sqlplus窗口执行命令: alter user you_username identified by you_password;