内置对象特点:
1. 由JSP规范提供,不用编写者实例化。
2. 通过Web容器实现和管理
3. 所有JSP页面均可使用
4. 只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>)
常用内置对象:
1. 输出输入对象:request对象、response对象、out对象
2. 通信控制对象:pageContext对象、session对象、application对象
3. Servlet对象:page对象、config对象
4. 错误处理对象:exception对象
Request(Javax.servlet.ServletRequest)它包含了有关浏览器请求的信息.通过该对象可以获得请求中的头信息、Cookie和请求参数。
Response(Javax.servlet.ServletResponse)作为JSP页面处理结果返回给用户的响应存储在该对象中。并提供了设置响应内容、响应头以及重定向的方法(如cookies,头信息等)
Out(Javax.servlet.jsp.JspWriter)用于将内容写入JSP页面实例的输出流中,提供了几个方法使你能用于向浏览器回送输出结果。
pageContext(Javax.servlet.jsp.PageContext)描述了当前JSP页面的运行环境。可以返回JSP页面的其他隐式对象及其属性的访问,另外,它还实现将控制权从当前页面传输至其他页面的方法。
Session(javax.servlet.http.HttpSession)会话对象存储有关此会话的信息,也可以将属性赋给一个会话,每个属性都有名称和值。会话对象主要用于存储和检索属性值。
Application(javax.servle.ServletContext)存储了运行JSP页面的servlet以及在同一应用程序中的任何Web组件的上下文信息。
Page(Java.lang.Object)表示当前JSP页面的servlet实例
Config(javax.servlet.ServletConfig)该对象用于存取servlet实例的初始化参数。
Exception(Javax.lang.Throwable)在某个页面抛出异常时,将转发至JSP错误页面,提供此对象是为了在JSP中处理错误。只有在错误页面中才可使用<%@page isErrorPage=“true”%>
Jsp内置对象 |
功能 |
主要方法 |
out |
向客户端输出数据 |
print() println() flush() clear() isAutoFlush() getBufferSize() close() ………… |
request |
向客户端请求数据 |
getAttributeNames() getCookies() getParameter() getParameterValues() setAttribute() getServletPath() ………….. |
response |
封装了jsp产生的响应,然后被发送到客户端以响应客户的请求 |
addCookie() sendRedirect() setContentType() flushBuffer() getBufferSize() getOutputStream() sendError() containsHeader()…………… |
application |
||
config |
表示Servlet的配置,当一个Servlet初始化时,容器把某些信息通过此对象传递给这个Servlet |
getServletContext() getServletName() getInitParameter() getInitParameterNames()…………… |
page |
Jsp实现类的实例,它是jsp本身,通过这个可以对它进行访问 |
flush()……… |
pagecontext |
为JSP页面包装页面的上下文。管理对属于JSP中特殊可见部分中己经命名对象的该问 |
forward() getAttribute() getException() getRequest() getResponse() getServletConfig() getSession() getServletContext() setAttribute() removeAttribute() findAttribute() …………… |
session |
用来保存每个用户的信息,以便跟踪每个用户的操作状态 |
getAttribute() getId() getAttributeNames() getCreateTime() getMaxInactiveInterval() invalidate() isNew() |
exception |
反映运行的异常 |
getMessage()………… |
pageContext, request, session、application四个作用域中
1、如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。 从把变量放到pageContext开始,到jsp页面结束,你都可以使用这个变量。
2、如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过 程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。
3、如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话。所谓当前会话,就是指从用户打开浏览器开始,到用户关闭浏览器这中间的过程。这个过程可能包含多个请求响应。也就是说,只要用户不关浏览器,服务器就有办法知道这些请求是一个人发起的,整个过程被称为一个会话(session),而放到会话中的变量,
4、如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。整个应用是指从应用启动,到应用结束。我们没有说“从服务器启动,到服务器关闭”是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上面所有的应用都关闭了。application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。与上述三个不同的是,application里的变量可以被所有用户共用。如果用户甲的操作修改了application中的变量,用户乙访问时得到的是修改后的值。这在其他scope中都是不会发生的,page,
request, session都是完全隔离的,无论如何修改都不会影响其他。
转自:http://www.cnblogs.com/mengzhen123/p/5968831.html
Jsp的四大作用域与九大对象的更多相关文章
-
java Web jsp四大作用域和九大内置对象
JSP中的四大作用域:page.request.session.application 这四大作用域,其实就是其九大内置对象中的四个,为什么说他们也是JSP的四大作用域呢?因为这四个对象都能存储数据, ...
-
jsp笔记,包括编译指令和动作指令,九大对象等
jsp基础知识 不包括HTTP协议,只有jsp的基础知识,包括表达式,代码片段,jsp九大对象等. 编译指令是在jsp被转换成selvet时,使用的. 而动作指令,是在每次客户端请求时动态执行.
-
JSP的九大对象和四大作用域
1.JSP中九大内置对象为: request 请求对象 类型 javax.servlet.ServletRequest 作用域 Request ...
-
【转】Servlet 九大对象和四个作用域
隐式对象 说明 request 转译后对应HttpServletRequest/ServletRequest对象 response 转译后对应HttpServletRespons/ServletRes ...
-
JSP中四大作用域详解
四大作用域 为了在页面.请求.和用户之间传递和共享数据,JSP提供了四个不同的作用域:page(页面作用域).request(请求作用域).session(会话作用域).application(应用程 ...
-
jsp的四大作用域
http://lavasoft.blog.51cto.com/62575/275586/ jsp中四个作用域的区别 JSP内置对象作用域表 名称 作用域 application 在所有应用程序中有效, ...
-
Jsp的九大对象,七大动作,三大指令
jsp九大内置对象:1>out 向客户端输出数据,字节流.如out.print(" dgaweyr"); 2>request 接收客户端的http请求.String g ...
-
JSP九大对象
内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 JSP中九大内置对象为: request——请求对象——类型 javax.servlet.ServletRe ...
-
JSP介绍(2)--- 九大隐式对象
request对象 每当客户端请求一个JSP页面时,JSP引擎就会制造一个新的request对象来代表这个请求. request对象提供了一系列方法来获取HTTP头信息,cookies,HTTP方法等 ...
随机推荐
-
lodash的源码(1)
数组篇 1.compact,就是将数组中的false值去掉 function compact(array) { var index = -1, length = array ? array.lengt ...
-
FZU 1649 Prime number or not米勒拉宾大素数判定方法。
C - Prime number or not Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%I64d & % ...
-
json数据处理技巧(字段带空格、增加字段)
1.json数据的正常取值:json[i].fieldName 2.json数据的字段带空格:eval('json[' + i + ']["' + field + '"]') 3. ...
-
c语言面试题之sizeof
c语言面试题之sizeof */--> c语言面试题之sizeof Table of Contents 1. sizeof 1 sizeof sizeof是c语言中判断数据类型或者表达式的长度符 ...
-
Get与Post区别小结
Get:是以实体的方式得到由请求Url所指定资源的信息,如果请求Url只是一个数据产生过程,那么最终要在实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述. Post:是用来向 ...
-
点击li ,父辈出现; 子级,子辈不出现. prevUntil --->; 前面多个, 截止到 截止元素 , prev([expr]) -->; 前面一个.
要求: 1. 点击第一级 [1知识点] 的时候, [1知识点] 前有 圆圈. 点击 第二级 [1-1知识点, 1-2知识点, 1-3知识点] 时 , [1知识点]出现 圆圈. 2. 点击 第一级 ...
-
Python之路,第七篇:Python入门与基础7
python3 元组 (tuple) 元组是不可改变的序列, 同list 一样, 元组可以存放任意的值: 表示方法: 用小括号()括起来: 单个元素括起来后加逗号(,)区分单个对象还是元组: 创建空 ...
-
数据中有NA存在,处理办法
如果数据中有NA存在,表示这个位置数据遗失,不能进行值的类型描述.也不能用函数来计算,需要计算是可以加上na.rm=T表示忽略NA,但是这个位置并没有去除,使用length可以看到. > x&l ...
-
如何让自己的exe程序开机自启动
方法一. ①鼠标右键自己的exe程序,创建快捷方式 ②win+R,打开运行对话框,输入shell:startup,如下图: 将exe文件的的快捷方式拷贝到这个目录下,然后下次重启的时候自己的应用程序就 ...
-
BZOJ1038 瞭望塔
学习了半平交面. 我这里写的是训练指南中的双端队列,每次判断是否删去更优然后更新. 看hzwer中有一处不太明白就是为何要将两段加入队列 后来对拍出错才知道是因为精度,当两线重合时他们叉积返回值是一个 ...