您的位置:首页 > Web前端 > JavaScript

JSP内置对象学习笔记

2014-07-22 20:51 323 查看
JSP内置对象及作用

1. request 包含客户端请求信息

2. response 页面传回给客户端的相应信息(响应)

3. out 用来向客户端浏览器输出信息的数据流

4. session 为发送请求的客户建立会话

5. application 保存整个应用程序的共享信息

6. pageContext 保存当前JSP页面的共享信息

7. config 读取初始化参数(配置)

8. page 代表JSP网页本身

9. exception 获取运行时的异常

request内置对象

request对象用来接收客户端提交的各种信息。如果要实现与用户的互动,必须要知道用户的需求,然后根据这个需求生成用户期望看到的结果。这样才能实现与用户的互动。在Web应用中,用户的需求就抽象程一个request对象,这个对象中间包括用户所有的请求数据,例如通过表单提交的表单数据等方式传递参数,这些就是用户的需求。

request对象常用方法

1). getParameter(String name)
获取客户端传给服务器的参数值,name指定表单中参数的名字

2). getParameterNames() 获取客户端传给服务器的所有参数的名字,返回的结果是一个枚举实例

3). getParameterValues(String name)获取某一个参数的所有的值,name指定参数名字

4). getAttribute(String name) 获取request对象中某一个属性的值,name为属性名,如果该属性不存在,则返回null

5). setAttribute(String name, Java.long.Object.objt)给request对象设置一个名字为name的属性值,该值由objt设置

6). removeAttribute(String name)移除request对象中名字为name的属性

7). getAttributeNames() 返回request对象中所有属性的名字,结果是一个枚举类型

8). getCookies() 返回客户端所有的Cookie对象,结果是一个Cookie数组

9). getCharacterEncoding() 返回客户端请求中字符的编码方式

10). getContentLength 返回客户端请求的body的长度

11). getMethod() 返回客户端向服务器传输数据的方法,如get、post、header、trace等

12). getRequestURL() 获取发送请求的客户端地址

13). getRemoteAddr() 获取客户端的IP地址

14). getServerName() 获取服务器的名字

15). getServerPort() 获取服务器的端口号

16). getServletPath() 获取客户端所请求的脚本文件的文件路径

1. 获取用户提交的表单信息

request对象最主要的一个作用就是用来封装用户提交的表单信息,然后通过如下两个方法来获取用户提交的表单信息

getParameter(String name)获取客户端传给服务器的参数值

getParameterValues(String name)获取某一个参数的所有的值

2. 获取服务器端和客户端信息

使用request对象可以获取提交请求的客户端信息及接收请求的服务器信息:

客户端请求 服务器方法

客户端地址 getRequestURL()

IP地址 getRemoteAddr()

服务器的名字getServerName()

body的长度 getContentLength

服务器的端口号 getServerPort()

脚本文件的文件路径 getServletPath()

3. request中保存和读取共享数据

request对象不仅能够封装请求信息,而且可以保存和读取某一范围内的共享数据。request对象定义了一对方法getAttribute(String name)和setAttribute(String name, Java.long.Object.objt),用来在request对象读取和保存数据

response对象

response对象是服务器端向客户端返回的数据,从这个对象中间可以取出一部分与服务器互动的数据和信息。

response对象的主要方法

1). addCookies(Cookie cookie)
添加一个Cookie对象,用来保存客户端信息

2). addHeader(String name, String value)添加一个HTTP文件头信息,如果已有同名的Header,则覆盖它

3). containHeader(String name) 判断名字为name的HTTP文件头是否已存在

4). flushBuffer() 强制将当前缓冲区的内容发送到客户端

5). getBufferSize() 返回缓冲区的大小

6). getOutputStream() 获取到客户端的输出流

7). sendError(int) 向客户端发送到另一个位置去处理

8). sendRedirect(String location) 将响应发送到另一个位置去处理

9). setContentType(String contentType) 设置响应的MIME类型

10). setHeader(String name, String value)设置名字为name的HTTP文件头的值,新设置的值可以覆盖旧值

1. response 实现页面转向

使用request对象的sendRedirect(String location)方法可以实现页面的转向。<jsp:forward>动作指令也能够实现页面的转向。

以下是之间的对比:

<jsp:forward>: JSP引擎控制权的转向,地址栏中不会显示转向后地址

转向地址必须是相对路径,转向页面与转向到页面必须位于一个Web应用中

sendRedirect()完全跳转,浏览器将会得到跳转后地址,并重新发送链接

sendRedirect()方法中location用来指定转向地址。既可以是相对路径,也可以是一个合法的URL

2. 动态设置页面返回的MIME类型

在JSP中可以使用page 编译指令来设置页面的MIME (Multipurpose Internet Mail Extensions 多功能Internet邮件扩充服务,即文件的类型) 返回类型,但是在这里设置页面的编译阶段,以计算机设置完成, 且在运行阶段是不可更改的。而使用respose对象中的setContentType(String type)方法可以来动态设置页面的返回类型。

out内置对象

out内置对象是在Web应用开发过程中使用最多的一个对象,其功能就是动态的向JSP页面输出字符流,从而把动态的内容转化成HTML形式来展示。

这个对象在任何JSP页面中可以任意访问。out对象的方法主要用于输出各种各样格式的数据。

out内置对象常用方法

1). clear() 清除缓冲区的数据,但是仅仅是清除,并不向用户输出

2). claearBuffer() 清除缓冲区的数据,同时把这些数据向用户输出

3). close() 关闭out输出流

4). flush() 输出缓冲区的内容

5). isAutoFlush() 判断是否为自动刷新

6). print(String str) 输出带HTML格式的各种类型的数据,下一个输出语句不换行

7). println(String str) 输出带HTML格式的各种类型的数据,下一个输出语句换行

session内置对象

session对象用来保存每个用户的信息。例如,登录名、密码、上次访问时间等,从而可以跟踪每个用户的操作状态。一般情况下,当用户首次

登录系统时,Web容器就会给该用户创建一个唯一用来标识该用户会话的session ID。为了跟踪用户的操作状态,在多个页面之间保存共享信息,

JSP中提供了session对象。当该用户退出系统时,这个session自动消失。

session对象的主要方法

1).getAttribute(String name)
从session中获取名字为name 的属性

2).getAttributeNames() 返回存储在session对象中的所有属性的名字,结果为一个枚举类型

3).removeAttribute(String name) 删除名字为name的属性

4).setAttribute(String name, Java.lang.Object value)设置一个名字为name的属性,其值为values

5).setCreationTimes() 返回唯一标识该session的ID

6).getId() 返回唯一标识该session的ID

7).getLastAccessedTime() 返回与该session相关的客户端最后发送请求的时间

1. 获取session的ID

session对象的ID是用来唯一识别session的标识。该ID由一个32位的十六进制字符串组成,可以保证服务器中所创建的所有session对象都不相同

2. session中保存和读取共享数据

与request对象一样,session对象也有一对setAttribute()和getAttribute()方法,用来存储或者读取session中共享信息。而两种对象的两个方法的区别在于共享信息的范围不同,session对象中保存的共享信息的范围是整个会话过程,而request对象中保存共享信息的范围则是提交和被提交的页面。

3. session对象的生命周期

session对象的创建是由服务器完成的,当客户端第一次请求服务器时由服务器创建。如果会话过程过程一直存在,则session对象也将一直存在下去。只有当session过期、客户端关闭浏览器或者服务器端调用了session的invalidate()方法时session对象才被释放掉,结束其生命周期。

application内置对象

application对象保存着整个Web应用运行期间的全局数据和信息。从Web应用运行开始,这个对象就会被创建。在整个Web应用运行期间可以在任何

JSP页面中访问这个对象。所以如果要保存在整个Web应用运行期间都可以访问的数据,这时候就要用到application对象。

application对象常用方法

1).getAttribute(String name)
返回application对象中名字为name的属性的值

2).setAttributeNames() 返回application对象中所有属性的名字,结果为一个枚举类型

3).getInitParameter(String name) 返回application对象中名字为name的属性的初始值

4).getServletInfo() 返回Servlet编译器的当前版本的信息

5).getAttribute(String name, Object object)在application对象中设置一个名字为name的属性,其值为object
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: