借鉴原文:原文
九大内置对象:
1、什么是内置对象:
所谓内置对象就是我们在使用过程中不用去先创建然后再使用,再JSP页面中我们使用内置对象能够直接使用然后调用其方法,再servlet中我们获取session对象,我们要先request.getssion()获取对象,但是在Jsp中我们可以直接使用Session,并且调用其方法—>session.getId();
**
九大内置对象及其类型:
对象 | 类型
request HttpServletRequest
response HttpServvletResponse
session HttpSession
pageContext pageContext
exception Throwable
appilcation ServletContext
page Object(this)
out JSPWriter
config ServletConfig
2、解析几个内置对象
1)out对象对象,对象类型是JspWriter类,相当于带缓存的PrintWriter(不带缓存)
PrintWriter:write(“内容”) 直接向浏览器输出内容
JspWriter:writer(“内容”) 向jsp缓冲区写出内容
JspWriter当满足以下条件时之一时,缓冲区的内容写出:
a,缓冲区满了
b,刷新缓冲区
c,关闭缓冲区
d,jsp页面执行完毕
2)pageContext对象
pageContext的对象类型是PageContext,叫jsp的上下文对象.
pageContext作用:可以获取其他八个内置对象
//示例:
pageContext.getOut();
pageContext.getServletConfig()
使用场景:在自定义标签时会频繁使用到PageContext对象;或者是定义一个方法需要用到多个对象时,传一个pageContext对象就能解决问题.
四大域对象:
**
1、pageContext:作用范围整个JSP页面
2、ServletRequest:作用于一次请求
3、HttpSession:作用于一次会话
4、ServletContext:作用于整个Web应用
ServletContext context域
HttpServletRequet request域
HttpSession session域 --前三种在学习Servlet时就能接触到
PageContext page域 --jsp学习的
域的作用:设置数据、获取数据、共享数据