JavaWeb课程系列

5.jsp九大隐含对象

在JSP页面上编写Java代码时,有九个可以直接使用的内置对象。

PageContext pageContext

HttpServletRequest request

HttpSession session

ServletContext application

HttpServletResponse response

ServletConfig config

Throwable exception

JspWriter out

Object page

为什么可以在页面使用它们,因为我们发现,页面是在service方法中进行解析的。

而service方法在解析页面之前申明了。在页面设置为isErrorPage=”true”的时候,exception对象就会显示

5.1PageContext pageContext

pageContext主要有以下功能

  • 获取其它隐含对象

getException方法返回exception隐式对象

getPage方法返回page隐式对象

getRequest方法返回request隐式对象

getResponse方法返回response隐式对象

getServletConfig方法返回config隐式对象

getServletContext方法返回application隐式对象

getSession方法返回session隐式对象

getOut方法返回out隐式对象  

  • 作为域对象

可以设置、获取属性值

public void setAttribute(java.lang.String name,java.lang.Object value)

public java.lang.Object getAttribute(java.lang.String name)

public void removeAttribute(java.lang.String name)

  • 访问其它属性域

1 public java.lang.Object getAttribute(java.lang.String name,int scope)

2 public void setAttribute(java.lang.String name, java.lang.Object value,int scope)

3 public void removeAttribute(java.lang.String name,int scope)

int  scope代表各个域的常量,可取值如下

1 PageContext.APPLICATION_SCOPE

2 PageContext.SESSION_SCOPE

3 PageContext.REQUEST_SCOPE

4 PageContext.PAGE_SCOPE

5.2 HttpServletRequest request

域对象,可以存取属性值,用来在域中共享。

public void setAttribute(java.lang.String name,java.lang.Object value)

public java.lang.Object getAttribute(java.lang.String name)

public void removeAttribute(java.lang.String name)

5.3 HttpSession session

域对象,可以存取属性值,用来在域中共享。

5.4 ServletContext application

域对象,可以存取属性值,用来在域中共享。