JSP隐式对象-JSP笔记-6

一、关于JSP隐式对象

  • JSP饮食对象是web容器加载的一组类的实例。

  • 它不像一般的java对象那样用"new"去获取实例,而是可以直接在jsp页面的java程序片和表达式部分使用对象。

  • jsp使用java定义的隐式对象来访问网页的动态内容。

  • 隐式对象的名称是jsp的保留字。

  • jsp提供了一些隐式对象可简化开发。

注:这里我们主要体验这些JSP隐式对象的作用范围。

  1. 对象的作用域是可以访问对象的部分;
  2. JSP页面中的隐式对象的作用域包括:
  • page – 再引用对象的JSP页面中提供对象。
  • Request – 提供在所有请求页面中可用的对象。
  • Session – 提供对象已访问给顶应用程序中的所有网页。例如,用户访问一个网站,并通过访问其他链接打开网站中的其他页面。网站中的所有网页形成一个应用程序作用域。
  1. 作用于通信对象和控制对象用于访问给定作用域中可用的所有对象。

二、四种隐式对象:

  1. 输入/输出对象:
  • request
  • response
  • out
  1. 作用域通信对象:
  • session
  • application
  • pageContext
  1. Servlet对象
  • page
  • config
  1. 错误对象
  • exception

2.1、输入/输出对象:

  1. 控制页面的输入和输出
  2. 访问与所有请求和响应有关的数据
  3. 输入和输出对象包括request,response和out

2.2、request对象

客户端请求,此请求会包含来自GET/POST请求的参数;用户输入的数据用来保存在Request对象中,用javax.servlet.HttpServlet来执行。request对象的作用范围只在本页,跳转页面后之前的设置信息失效。部分代码如下所示:

<body>
<%
request.setAttribute("name","zhangsan") ;
request.setAttribute("password","123456") ;
//request.removeAttribute("name");
%>
<jsp:forward page="request1.jsp"/>
<a href="<%=path %>/first/request1.jsp">request1.jsp</a>
</body>

2.3、response对象

处理jsp生成的响应;响发送给客户端;实现javax.servlet.http.HttpServletResponse接口;jsp引擎吧存放在request对象中的数据发到服务器端的组件,组件收到这些个数据后进行相应处理;返回一个response对象给jsp引擎,jsp引擎再把response对象传给jsp页面,这时的页面包含了定好的格式和从服务器端得到的数据。response的作用范围仍然局限于本页面

2.4、out对象

表示输出流(注意不是response.getWriter(),因为这种是PrintWriter类型);javax.servlet.jsp.JspWriter类的实例;使用write()、print()、和println()方法;Write()和print()方法的区别是Write只能输出和字符相关的东西,而print()可以输出各种那个数据类型

三、作用域通信对象

3.1、session对象

Web服务器为单个用户发送的多个请求创建会话;存储有关用户会话的所有信息;javax.servlet.http.HttpSession接口的实例;session对象的作用范围在跳转页面后仍然有效

3.2、application对象

表示jsp页面所属的应用程序;应用程序的jsp页面组合起来形成一个应用程序,适用范围最广的上下文状态。它允许jsp页面的servlet与包括在同一应用程序中的任何web组件共享信息;javax.servlet.ServletContext接口实例。application对象的作用范围在跳转页面后失效

3.3、pageContext对象

使用户可以访问页面作用域中定义的所有隐式对象;他的作用范围是在同一页面;javax.servlet.jsp.PageContext类的实例;是jsp页面本身的上下文;提供唯一一个API来管理具有不同作用域的属性;在实现jsp自定义标记处理程序时使用的非常多;pageContext对象的作用范围在跳转页面后仍然有效

四、Servlet对象

JSP引擎为每个JSP生成一个Servlet;Servlet的对象提供了访问Servlet信息的方法和变量;Servlet对象包括:page和config。

4.1、page对象

使用page对象可以访问Servlet类的所有变量和方法;java.lang.Object类的

4.2、page对象

存储在便宜JSP页面的过程中刚创建的信息;javax.servlet.ServletConfig接口的实例;提供了检索Servlet的初始化参数的方法;

五、Exception对象

exception对象用于处理JSP页面中的错误;exception对象用于访问执行JSP的过程中引发的异常;exception对象是java.lang.Throwable类的实例;

Author: bugwz
Link: https://bugwz.com/2016/12/11/jsp-6/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.