JSP内置对象

本文详细介绍了JSP内置对象的功能及使用方法,包括输出流out、请求信息request、响应信息response、会话session、全局变量application等9个内置对象。通过这些内置对象,开发者能够更加高效地进行JSP页面开发。

JSP内置对象


1. 基本概念

  • 在JSP程序中有9个内置对象由容器为用户进行实例化,程序员可以不用定义就直接使用这些变量。 
  •  在JSP转换成Servlet后,会自动追加这些变量的定义,使用内置对象可以简化JSP的开发。

2.对象名称

对象变量

对象类型

作用

out

JSPWriter

输出流

request

HttpServletRequest

请求信息

response

HttpServletResponse

响应信息

session

HttpSession

会话

application

ServletContext

全局的上下文对象

pageContext

PageContext

JSP页面上下文

page

Object

JSP页面本身

config

ServletConfig

Servlet配置对象

exception

Throwable

捕获网页异常

2.1 out内置对象

out内置对象是一个缓冲的输出流,用来给客户端输出信息

常用方法如下:

方法声明

功能介绍

void println(String x)

向客户端输出各种类型数据

void newLine()

输出一个换行符

void close()

关闭输出流

int getBufferSize()

返回缓冲区的大小

int getRemaining()

返回缓冲区中未使用的字节数

void flush()

输出缓冲区里的数据

void clearBuffer()

清除缓冲区里的数据,同时把数据输出到客户端

void clear()

清除缓冲区里的数据,但不把数据输出到客户端

2.2 request内置对象

  • request对象封装的是调用JSP页面的请求信息,它是HttpServletRequest接口的一个实例。
  • 该对象的属性值只在一个请求中保存。

常用方法如下:

方法声明

功能介绍

String getMethod()

返回客户端向服务器端传送数据的方式

String getParameter(String name)

返回客户端向服务器端传送的参数值

String[] getParameterValues( String name)

获得指定参数的所有值

String getRequestURI()

获得请求地址

String getRemoteAddr()

返回发送请求的客户端或最后一个代理的IP地址

int getRemotePort()

返回发送请求的客户端或最后一个代理的端口号

String getServerName()

获取服务器的名字

int getServerPort()

获取服务器端的端口

void setAttribute(String name,Object o)

在此请求中存储属性。属性在请求之间重置

Object getAttribute(String name)

将指定属性的值作为对象返回,若不存在则返回空

2.3  response内置对象

  • response对象用于给客户端相应输出处理结果,它是HttpServletResponse接口的一个实例。 
  • 经常用于设置HTTP标题,添加cookie、设置响应内容的类型和状态、发送HTTP重定向和编码URL。

常用方法如下:

方法声明

功能介绍

void addCookie(Cookie cookie)

添加一个Cookie对象,用于在客户端保存特定的信

void addHeader(String name, String value)

添加HTTP头信息,该Header信息将发送到客户端

boolean containsHeader(String name)

判断指定名字的HTTP文件头是否存在

void sendRedirect(String location)

重定向JSP文件

void setContentType(String type)

设置类型与编码方式

2.4 session内置对象

  • session对象表示浏览器和服务器之间的一次会话,一次会话可以包含多次请求,在多次请求之间  可以借助session对象存储信息,它是HttpSession类型的一个实例。
  • 该对象的属性值在一次会话范围中保存,保存在服务器端,只要不关闭浏览器,默认半个小时内都  可以访问。

常用方法如下:

方法声明

功能介绍

void setAttribute(String name, Object value)

使用指定的名称将对象绑定到此会话

Object getAttribute(String name)

返回在此会话中用指定名称绑定的对象,如果没有对象在该名称下绑定则返回空值

2.5 application内置对象

  • application对象是一个web程序的全局变量,它是ServletContext类型的一个实例。 
  • 在整个服务器上保存数据,所有用户共享。

常用方法如下:

方法声明

功能介绍

void setAttribute(String name, Object object)

将对象绑定到此servlet上下文中的给定属性名

Object getAttribute(String name)

返回给定名称的servlet容器属性,若没有该名称的属性返回null

2.6 pageContext内置对象

  • pageContext对象是PageContext类型的对象,可以使用这个对象来管理其他的隐含对象。 
  • 只在一个页面中保存数据

方法声明

功能介绍

void setAttribute(String name, Object value, int scope)

使用适当的作用域设置指定的名称和值

Object getAttribute(String name, int scope)

返回指定作用域中名称关联的对象,若找不到则返回null

ServletRequest getRequest()

获取请求对象

ServletResponse getResponse()

获取响应对象

HttpSession getSession()

获取会话对象

ServletConfig getServletConfig()

获取配置对象

JspWriter getOut()

获取输出对象

Object getPage()

获取页面对象

Exception getException()

获取异常对象

2.7 exception内置对象

  • exception 对象是Throwable的实例,表示的是JSP的异常信息。
  • 如果要使用它,必须将对应页面page指令的isErrorPage属性设置成true。
  • 单个页面的处理方式

<%@page errorPage="error.jsp" %>

  • 在web.xml中配置统一的异常处理页面
<error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/error.jsp</location>
</error-page>

节选自拉钩教育JAVA系列课程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

enterpc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值