一、8个内置对象
1.引入
我们为什么能直接在jsp里面使用 out.print()
?
因为: out 对象是一个 内置,对象(这里一共有8个内置对象)
2. 九大内置对象
1.源码分析,
(1)jsp的本质就是转化为 jsp.java ,我们看看源码
final javax.servlet.jsp.PageContext pageContext;
javax.servlet.http.HttpSession session = null;
final javax.servlet.ServletContext application;
final javax.servlet.ServletConfig config;
javax.servlet.jsp.JspWriter out = null;
final java.lang.Object page = this;
javax.servlet.jsp.JspWriter _jspx_out = null;
javax.servlet.jsp.PageContext _jspx_page_context = null;
(2)怎么只有8个??
还有一个是exception
2. 9大内置对象总结
内置对象 | 作用 | 类型 | 作用域 |
---|---|---|---|
request | 请求对象 | ServletRequest | Reqeust |
response | 响应对象 | ServletResponse | Page |
pageContext | 页面上下文对象 | PageContext | Page |
application | 应用程序对象(ServletContext别称) | ServletContext | Application |
out | 输出对象 | JspWriter | Page |
comfig | 配置对象 | ServletConfig | Page |
page | 页面对象(代表这个页面this) | Object | Page |
exception | 异常对象 | Throwable | Page |
二、4种作用域(重点)
1.总结表格
名称 | 描述 | 作用域 |
---|---|---|
Application | 等同于ServletContext(之前Servlet学过) | 不关闭服务器就有效 |
session | 等同于session(之前Servlet学过) | 不关闭浏览器有效(多个请求) |
request | 等同于request(之前Servlet学过)可以转发 | page+可以转发(针对同一个请求) |
page | 最小的等级,不能跳转转发页面, | 当前页面有效。 |
2.画图分析
1.page
2.request,可转发
3.session可以多个请求
4.Application(和ServletContext别称):不关闭服务器都行
三、遇到的问题与解决
无测试代码,无问题。