JSP九大内置对象和JSP/Servlet作用域

来源:互联网 发布:青果软件教务系统 编辑:程序博客网 时间:2024/05/19 14:38

一、九大内置对象

request HttpServletRequest

response HttpServletResponse
session HttpSession
application ServletcContext
out       JspWriter(带缓冲的PrintWriter)
pageContext (使普通Java类可访问WEB资源自定义标签常用)
exception (特殊情况下使用)
page     this(本JSP页面)

config   ServletConfig

二、详解:

1.Request对象叫请求。请求中封装了客户端所有的信息(cookies,session,表单数据、浏览器信息)

常用方法:


2.Response 对象叫响应,服务器端向客户端的请求作出响应。

常用方法:
     response.sendRedirect("index.jsp");   //页面的重定向,跳转到首页去。注意,地址栏会改变。因为针对于客户端来说,一共发生了两次请求。
设置服务器端响应的字符编码:response.setCharacterEncoding(“utf-8”);

3.Session对象叫会话:每一个浏览器访问网站,服务器就会给这个请求创建一个会话。存储到服务器端,服务器根据每一个会话的ID来区分每一个请求的用户。

常用方法:

注意:

Session中存储的数据可以是任意类型。存储位置在服务器端,安全性比较高。在同一台电脑中,不同的浏览器也认为是不同的用户,也会分配一个SesionID。
Session 会随着浏览器关闭而失效。但请注意,Session还会保留在服务端,一直要到设定的时间,才真正的销毁。

4.Application对象整个应用程序只有一个,所有的用户都可以访问到,安全性较高。随应用程序启动就产生了,一直保存在服务器端,要到应用程序关闭,才销毁。
通常用于存储一些所有用户都需要的数据

5.out内置对象用于向客户端发送文本数据。 
out对象是通过调用pageContext对象的getOut方法返回的,其作用和用法与ServletResponse.getWriter方法返回的PrintWriter对象非常相似。 
JSP页面中的out内置对象的类型为JspWriter,JspWriter相当于一种带缓存功能的PrintWriter,设置JSP页面的page指令的buffer属性可以调整它的缓存大小,甚至关闭它的缓存。 

只有向out对象中写入了内容,且满足如下任何一个条件时,out对象才去调用ServletResponse.getWriter方法,并通过该方法返回的PrintWriter对象将out对象的缓冲区中的内容真正写入到Servlet引擎提供的缓冲区中:

设置page指令的buffer属性关闭了out对象的缓存功能
out对象的缓冲区已满
整个JSP页面结束

三、作用域

pageContext(称之为page域) :存放的数据在当前页面有效。开发时使用较少。
request(称之为request域):一个请求,每一次与服务器的交互都是一次新的请求。
session(称之为session域):只在SessionID有效,则随时可以访问。与请求无关。
servletContext(称之为application域):存放的数据在整个应用范围内都有效。因为范围太大,应尽量少用。

原创粉丝点击