JSP九个内置对象分别是什么?(刚被面试问到了就知道一个 尴尬!!)
page、resquest、session、config、application、out、exception、pageContex、response
request HttpServletResquest -----------请求对象
response HttpServletResponse -----------响应对象
session HttpSession -----------会话对象
application ServletContex -----------web应用全局唯一对象
config ServletConfig -----------初始化数据
page this(HttpServlet) ----------代表当前jsp生成的Servlet对象
pageContext pageContext
exception Throwable(所有异常父类) ---------用来获取异常信息
out JSPWrite ----------向浏览器输出信息
page 代表当前jsp生成Servlet对象
*page是Object类型,只能使用Object中的方法 ------------------这个对象开发中不建议使用
*可以将page强制转换成HttpServlet对象的
Servlet有几种数据范围?三种: request 、session、servletcontext
JSP在Servlet三种数据范围基础上,新添加page数据范围 ------JSP四种数据范围:page request session application
*page数据范围存在数据只在当前jsp内有效
pageContext代表当前页面上下文
1.向page范围存取数据
findAttribute依次在page、request、session、application四个数据范围进行数据查找
EL中 ${name}调用findAttribute在四个范围中依次查找数据
2.pageContext用来获得其它八个隐含对象
*pageContext封装八个隐含对象意义:框架编写,得到pageContext对象相当于得到JSP九个内置对象
out对象
out功能想浏览器输出信息,是JspWriter类型,内部使用PrintWriter实现,拥有独立缓冲区。
out创建,out对象通过pageContext对象获得,创建pageContext对象时,指定out缓冲区大小以及是否自动flush
* 通过page指令buffer autoFlush设置out缓冲区大小以及是否自动flush
out向浏览器输出内容,response.getWrite向浏览器输出内容,区别?
out.println("aaa");
response.getWrite().println("bbb");
out.print(''ccc");
response.getWrite输出内容在out输出内容之前
page request session application response out config pageContext exception