JSP隐含对象(1)

一.JSP隐含对象初见;

(1)面试的时候总会有9大隐含对象,下边就详细介绍一下;

(2)在JSP页面中,经常要处理request请求、response响应等信息,为了简化程序设计,JSP规范定义了常用的9个隐含对象(implicit objects),

这些隐含对象不需要在JSP页面中用new关键字来创建,而是由Servlet容器来创建与管理,并传递给JSP页面的Servlet实现类使用。 (如下图)


(3)在JSP页面Servlet实现类的_jspService()方法内部,自动初始化JSP隐含对象的代码段如下: 



所以JSP隐含对象是在JSP页面servlet实现类的_jspService()方法内部定义,故jsp页面可以<% %> 或<%= %>中直接使用它们!

二.out隐含对象;

(1)out对象输出信息的方法主要有print()和println()和newline()
这个比较简单不做介绍;
(2)缓冲区相关方法:
out对象中与输出缓冲区相关的方法主要有下边几种:

1、flush( )方法

flush()用于刷新流。Java中把I/O操作转化为流操作。out.write()输出的信息暂时存储在流对象缓冲区中,刷新操作把缓冲区中的信息传递给目标对象处理,如果目标对象是另外一个字符流或字节流,同样刷新它,所以,调用flush()方法会导致刷新所有输出流对象链中的缓冲区。如果缓冲区满了,这个方法被自动调用,输出缓冲区中的信息。 

如果流已经关闭,调用print()或flush()会引发一个IOException异常;

2、clear()方法
clear()表示清除缓冲区中的信息。如果缓冲区是空的,执行此方法会引发IOException异常。
3、clearBuffer()
clearBuffer()的功能与clear()相似,它将输出缓冲区清除后返回,与clear()不同的是它不抛出异常。 

4、getBufferSize()
getBufferSize()返回输出缓冲区的大小,单位字节,如果没有缓冲区,则返回0。
5、getRemaining()
getRemaining()返回缓冲区剩余的空闲空间,单位字节。

6、isAutoFlush()
isAutoFlush()返回一个真假值,用于标示缓冲区是否自动刷新。


三.request隐含对象;


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。