JSP隐式对象

JSP 隐式对象是 Web 容器创建的一组对象

JSP 隐式对象是可以直接在JSP页面使用的对象 ,无需使用“new”获取实例

  1、

out 对象用于向客户端输出数据,类似于 servlet 内通过 response.getWriter () 获取的 out 对象。 out 对象常用的输出数据方法: append() print()

                write()

 2、

• request 对象主要用于处理客户端请求 • request 对象的方法 1

方法

说明

void setAttribute(String name, Object value)

把name属性储存到request对象

Object getAttribute(String name)

返回name 属性的值

void removeAttribute(String name)

从request对象中移除name 属性

String getParameter(String name)

返回指定name 的参数值

Enumeration getParameterNames( ) 

以枚举类型返回所有的参数名称

String [] getParameterValues(String name)

以字符数组类型返回所有指定name 参数值

Map getParameterMap( ) 

以java.util.Map类型返回请求参数

String getProtocol()

返回使用的协议版本

Void setCharacterEncoding(String code)

设置请求正文的编码方式

• request 对象的方法 2

方法

说明

String getContextPath( ) 

返回请求context 路径(即/站点名称)

String getMethod( )

返回http 的方法(get、post、put等)

Cookie[]getCookies()

返回与请求相关的所有Cookie

String getRequestedSessionId( )

返回用户端的session ID

String getRequestURI( )

返回请求URI,不包括请求的查询字符串

String getRequestURL( )

返回请求的全部URL,包括协议、服务器名字和端口、请求的URI,但不包括请求的查询字符串

String getRemoteUser( ) 

返回登录用户的名称

3、

•response对象的方法 

方法

说明

void addCookie(Cookie cookie)

添加指定的cookie到响应对象

void addHeader(String name, String value)

添加指定的name和String类型值到标题头

Void sendError(int sc)

向客户端发送定义的状态码

Void sendError(int sc,String mess)

向客户端发送定义的状态码和错误信息

Void setStatus(int sc)

设置响应的状态码

String encodeURL(String url)

重写指定的URL,包含sessionID

String encoeRedirectURL(String url)

对使用sendRedirect()方法的URL重写

respone对象的转发和重定向

•转发(forward) 和 重定向 (redirect)

• Forward和Redirect代表了两种请求转发方式: 直接转发 和 间接转发 。 • 直接转发 方式(Forward),客户端和浏览器只发出 一次请求 ,Servlet、HTML、JSP或其它信息资源,由第二个信息资源响应该请求,在请求对象request中,保存的对象对于每个信息资源是共享的。 • 间接转发 方式(Redirect)实际是两次请求,服务器端在响应第一次请求的时候,让浏览器再向另外一个URL发出请求,从而达到转发的目的。

 4、

• session 对象用来存储有关用户会话的所有信息 • Servlet 和 JSP 页面通过 session 来共享数据 • session 对象常用方法 : • void setAttribute (String key,Object value) 将一对键值对存储到 session 会话中 session. setAttribute ("name", "admin"); • Object getAttribute (String key) 获取 session 中指定名称的值对象

String name = (String) session.getAttribute("name");

 •Servlet和JSP页面使用session对象来共享数据

5、

• application 类似于系统的“全局变量”,用于实现用户之间的数据共享 • application  对象实现了 javax.servlet.ServletContext  接口 • application 对象的常用方法: • void setAttribute (String key, Object value) :以键 / 值的方式,将一个对象的值存放到 application 中 application.setAttribute ("LOGINED_USER", new ArrayList ()); • Object getAttribute (String key) :根据键去获取 application 中存放对象的值

if (application.getAttribute("LOGINED_USER") != null) {

      List loginedUsers = (List) application.getAttribute("LOGINED_USER");

}

 6、

• pageContext 对象是 javax.servlet.jsp.PageContext 类的实例 • 容器自动为每个 JSP 页面创建与之对应的 pageContext 对象 • 并把与 JSP 对应的 Servlet 对象的相关对象都自动地加入到 pageContext 对象中 • pageContext 对象提供了 PAGE_SCOPE 、 REQUEST_SCOPE 、 SESSION_SCOPE 、 APPLCATION_SCOPE4 个属性对应 4 个作用域

7、

• page 对象代表 JSP 本身,更准确地说它表示与 JSP 对应的 Servlet 类的实例 • page 对象可以引用 Servlet 中的任何方法 • page 对象对应的接口 javax.servlet.jsp.HttpJspPage • 在 JSP 页面中, this 关键字表示当前 JSP 页面这个对象,可以调用常见的方法 • ServletConfig getServletConfig () 返回当前页面的 ServletConfig 对象 • ServletContext getServletContext () 返回当前页面的 ServletContext 对象 • String getServletInfo () 获取当前 JSP 页面的 Info 属性

8、

• config  对象是实现了 javax.servlet.ServletConfig 接口,用来存放与 JSP 相关的初始化数据 • 在 showconfig.jsp 页面里,使用 config 对象来从 web.xml 读取 JSP 页面的初始化参数 • getInitParameter (name) 返回 web.xml 中指定参数的值

9、

• exception 内置对象是 java.lang.Throwable 类的实例,提供此对象是为了在 JSP 中处理异常 • JSP 错误处理涉及一个对象,即 exception 对象,此隐式对象只适用于 JSP 错误页面 • 在 JSP 页面跑出异常时,将转发至 JSP 错误处理页面 • 若要在页面中使用 exception  对象,必须在 page  指令中指定 <%@ page isErrorPage="true" %>

总结:

• JSP 有 9 个隐式对象可分为四个类别 : • 输入 / 输出对象、作用域通信和控制对象、 Servlet 相关对象和错误处理对象 • out 对象表示与响应关联的实际输出流 • request 对象表示封装了请求信息, response 对象表示输出结果 • session 隐式对象主要用于存储和检索属性值。 • 每个 JSP 文档都有一个 application 的隐式对象,用来存储运行环境的有关信息。 • pageContext 隐式对象表示 JSP 文档的运行环境,提供对所有其它隐式对象及其属性的访问。 • exception 隐式对象用于在 JSP 中处理异常

 

上一篇:Tomcat漏洞复现


下一篇:idea里面解决jsp,html,xml黄色背景的方法