JSP九大内置对象

Posted on 2019-05-10 23:14  翻身的咸鱼  阅读(129)  评论(0编辑  收藏  举报

JSP 页面定义好的对象,就叫做隐含对象(又称内置对象),是指可以不加声明和创建就可以在 JSP 页面脚本(Java 程序片和 Java 表达式)中使用的成员变量,JSP 因为可能需要获取共享数据、页面跳转等操作,JSP 就内置九个对象以供 JSP 日常操作

在 JSP 中一共预先定义了九个隐含对象,分别为 request,response,pageContext,session,application,out,config,page 和 exception

request:

request 对象代表的是 javax.servlet.http.HttpServletRequest 类的对象,它封装了由客户端生成的 HTTP 请求的所有细节,主要包括 HTTP 头信息、系统信息、请求方式和请求参数等,通过 request 对象提供的相应方法可以处理客户端浏览器提交的 HTTP 请求中的各项参数

response:

response 对象代表的是 javax.servlet.http.HttpServletResponse 类的对象,用于响应客户请求,向客户端输出信息,它封装了 JSP 产生的响应,并发送到客户端以响应客户端的请求

session:

session 在网络中被称为会话,它是 javax.servlet.http.HttpSession.session 类的对象,由于 HTTP 协议是一种无状态协议,也就是当一个客户端向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器是不保存相关的信息,为了弥补这一缺点,HTTP 协议提供了 session,通过 session 可以在应用程序的 Web 页面间进行跳转时,保存用户的状态,使整个用户会话一直存在下去,直到关闭浏览器

注意:session 中保存和查找的信息不能是基本数据类型,如 int、double 等,而必须是 java 对象,如 Integer、Double 等,还有如果在一个会话中,客户端长时间不向服务器发出请求,session 对象就会自动消失。这取决于服务器,Tomcat 服务器默认为 30 分钟

application:

application 是 javax.servlet.ServletContext 类的对象,该对象用于保存所有应用程序中的公有数据,它在服务器启动时自动创建,在服务器停止时销毁,当 application 对象没有被销毁时,所有用户都可以共享该 application 对象

out:

out 对象代表的是 javax.servlet.jsp.JspWriter 类的对象,用于在 Web 浏览器内输出信息,并且管理应用服务器上的输出缓冲区,out 对象可以输出各种数据类型的数据,在输出非字符串类型的数据时,会自动转换为字符串进行输出

config:

config 对象代表的是 javax.servlet.ServletConfig 类的对象,主要用于取得服务器的配置信息,当一个 Servlet 初始化时,容器把某些信息通过 config 对象传递给这个 Servlet 服务器

exception:

exception 对象代表的是 java.lang.Throwable 类的对象,用来处理 JSP 文件执行时发生的所有错误和异常,只有在 page 指令中设置为 isErrorPage 属性值为 true 的页面中才可以被使用,在一般的 JSP 页面中使用该对象将无法编译 JSP 文件

pageContext:

pageContext 对象代表的是 javax.servlet.jsp.PageContext 类的对象,是一个比较特殊的对象,它相当于页面中所有其他对象功能的最大集成者,即使用它可以访问到本页面中所有其他对象,例如 request、response 以及 application 等