JSP四大作用域和九个内置对象

star2017 1年前 ⋅ 553 阅读

四大作用域的作用是为了实现页面和服务器共享数据。

  1. page:设置的属性令在当前页面有效。实际开发中较少使用,作用域太小了。
  2. request:属性仅在本次请求有效。
  3. session:令在浏览器和服务进行本次会话有效,当和服务器断开后,属性失效。
  4. application:属性在整个WEB应用中都有效,直到服务器停止才失效。实际开发中几乎不使用,作用域太大了。

四大作用域分别都有设置和获取属性的两个方法:setAttribute()、getAttribute()

9个隐式对象

对象 JSP类型 作用域 生命周期
1 request javax.servlet.http.HttpServletRequest Request 本次请求有效
2 response javax.servlet.http.HttpServletResponse Page 当前页面有效
3 session javax.servlet.http.HttpSession Session 本次会话有效,和服务器断开后失效
4 application javax.servlet.ServletContext Application 整个WEB应用中都有效,直到服务器停止才失效
5 config javax.servlet.ServletConfig Page 当前页面有效
6 out javax.servlet.jsp.JspWrite Page 当前页面有效
7 page javax.servlet.jsp.HttpJspPage Page 当前页面有效
8 pageContext javax.servlet.jsp.PageContext Page 当前页面有效
9 exception javax.lang.Throwable Page 当前页面有效

request对象

用于获取客户端信息,如页面提交的表单信息。JSP 容器会将客户端的请求信息封装在 request 对象中。在客户端发出请求时创建 request 对象,在请求结束后销毁对象。
request.getParameter()默认字符编码是ISO-8859-1,中文会显示乱码,需要设置编码格式:request.setCharacterEncoding("UTF-8");

response对象

response 对象封装响应数据返回给客户端。常用于设置 HTTP 标题、添加 cookie、设置响应内容的类型 和状态,发送 HTTP 重定向和编码 URL。
response 的一个主要应用是重定向,可以通过 response 的sendRedirect(String url)实现。
重定向:通知浏览器跳转请求,浏览器地址发生改变,由浏览器操作。

out对象

out对象是一个缓冲输出流,用来向客户端返回信息。
典型应用就是向客户端输出数据。

session对象

session对象是会话对象,用来记录每个客户端的访问状态。
session数据保存在服务器。cookie数据保存在浏览器。
会话:浏览器与服务器建立连接,到关闭浏览器与服务器断开连接的过程。

application对象

用于获取和设置Servlet的相关信息,它的生命周期从服务器启动直到服务器半闭为止。封装了JSP所在的WEB应用中的信息。
如:统计访问网站人数。

pageCntext对象

比较特殊,不仅可以设置page范围内的属性,还可以设置其他范围的属性;还可以访问本页面中的所有其他对象。
因其它对象有各自的方法,此对象实际使用并不多。

page对象

指当前的 JSP 页面本身,它是java.lang.Object类的对象。实际使用不多。

config对象

config对象是 ServletConfig 类的一个实例,在 Servlet 初始化时,可以通过 config 向 Servlet 传递信息。
JSP开发很少用到,当需要重载Servlet的init()方法时才会用到 config 对象。可以获取 Servlet 相关信息。

exception对象

exception对象是java.lang.Throwable类的对象。
在JSP开发中,习惯是在一个页面中使用 page 指令的 errorPage 属性,让该属性指向一个专门用于异常处理的页面。如果在 JSP 页面中有未捕获的异常 ,则会生成exception对象,然后将该exception对象传送给 page 指令设置的异常处理页面中,在异常 得理页面中对exception对象进行处理。
在异常处理页面中需要将其 page 指令的isErrorPage属性设置为 true 才可以使用 exception 对象。

更多内容请访问:IT源点

全部评论: 0 条

    我有话说: