日期:2014-05-16 浏览次数:20324 次
JSP隐式对象
public void _jspService(HttpServletRequest request,
HttpServletResponseresponse)
throwsjava.io.IOException, ServletException
{
JspFactory_jspxFactory = null;
PageContextpageContext = null;
HttpSession session = null;
ServletContextapplication = null;
ServletConfigconfig = null;
JspWriterout=null;
Objectpage = this;
...
...
Throwable exception =
org.apache.jasper.runtime.JspRuntimeLibrary.getThrowable(request);
if(exception != null) {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
}
九大隐式对象
request response pageContext session application config out page exception
out隐式对象
l out隐式对象用于向客户端发送文本数据。
l out对象是通过调用pageContext对象的getOut方法返回的,其作用和用法与ServletResponse.getWriter方法返回的PrintWriter对象非常相似。
l JSP页面中的out隐式对象的类型为JspWriter,JspWriter相当于一种带缓存功能的PrintWriter,设置JSP页面的page指令的buffer属性可以调整它的缓存大小,甚至关闭它的缓存。
l 只有向out对象中写入了内容,且满足如下任何一个条件时,out对象才去调用ServletResponse.getWriter方法,并通过该方法返回的PrintWriter对象将out对象的缓冲区中的内容真正写入到Servlet引擎提供的缓冲区中:
ü 设置page指令的buffer属性关闭了out对象的缓存功能
ü out对象的缓冲区已满
ü 整个JSP页面结束
out隐式对象工作原理
JSP指令
l JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。在JSP2.0规范中共定义了三个指令:
? page指令
? Include指令
? taglib指令
JSP指令简介
l JSP指令的基本语法格式:
<%@指令 属性名="值" %>
举例:<%@ pagecontentType="text/html;charset=gb2312"%>
l 如果一个指令有多个属性,这多个属性可以写在一个指令中,也可以分开写。
例如:
&n