jsp(14)(九大隐式对象中 out pageContext)

jsp原理:

访问jsp页面,实际上是,web服务器交给jsp引擎处理,首先将jsp解析成sevlet(_jspServlet),然后请求交给servlet处理。所以第一次访问jsp比较慢,之后会直接访问这个servlet。

九大隐式对象:

在jsp解析成servlet的过程中,会将一些对象封装到service方法中,并且jsp也定义了这些对象对应的引用变量,在jsp可以直接使用。
(request response session application(servletContext) config  exception page(this)   out  pagecotext )

前面的7个对象已经介绍过,这里介绍后面2个:

1.out:jsp的out对象是JspWriter类型(不同于Servlet的PrintWriter 的out对象),是带有缓冲的输出对象。

(缓存大小可以通过page指令设置,对象通过pageContex对象的getOut获取)

向out对象中写数据,只有满足以下3个条件才会调用servlet的输出对象真正写到servlet引擎的缓冲区再输出浏览器(servlet引擎还有一个缓冲区)。

实例:

 

原理是:

 

2.pageContext:代表jsp页面的运行环境,还有一些特别功能:

pageContex作为8个对象引用可以用来作为自定义的标签的参数(为了页面更加简洁,使用标签代替java语句块)

 

 本身是4个域中的一个(范围最小一个域,仅当前页面),还可以获取其他域中属性。

代码示例:

 

简化了重定向和动态包含的方式: 

include还有一个带参数重构方法

include(java.lang.String relativeUrlPath, boolean flush) 

True if the JspWriter is to be flushed before the include,默认false,

 

posted @ 2017-02-07 10:35  假程序猿  阅读(236)  评论(0)    收藏  举报