jsp中的九大内置对象的定义及作用

1.什么叫做内置对象?

答:在jsp中,有一些对象即开发者不需要自己去创建对象(全部由系统创建好),就可以直接使用对象调用相应的方法,这些由系统创建的对象称为内置对象。

2.九大内置对象分别是哪些?

内置对象名                   类型                                                                 对象名                             作用域

四大作用域对象:

request                        javax.servlet.http.HttpServletRequest              请求对象                         Request

session                        javax.servlet.http.HttpSession                          会话对象                         Session

application                   javax.servlet.ServletContext                             应用程序对象                  Application

pageContext                javax.servlet.jsp.PageContext                          页面上下文对象              Page

两个输出  

out                               javax.servlet.jsp.JspWriter                                 输出对象                          Page

response                     javax.servlet.http.HttpServletResponse             响应对象                          Page

三个打酱油

page                            java.lang.Object                                                 页面对象                          Page

config                          javax.servlet.ServletConfig                                 配置对象                          Page

exception                    java.lang.Throwable                                            例外对象                          Page

对作用域的解释:

Page域:只能在当前jsp页面使用(当前页面)。

Request域:只能在同一请求中使用(转发)。

Session域:只能在同一会话(session会话)中使用(私有的)。

Context(Application)域:只能在一个web应用中使用(全局)。

3.一一解析各个内置对象      

3.1 request 对象

该对象代表客户端的请求信息,主要用于接收通过HTTP协议传送到服务器的数据(包括请求头信息,系统信息,请求方法以及请求参数等)。request对象的作用域为一次请求。

3.1.1 常用方法:

getParameter(String name) :返回指定参数名称的数值,如果没有相对应的数值则返回null。

getParameterValues(String name):返回具有相同参数名称的数值的集合,返回String类型的数组。

getRequestDispatcher(String uripath):页面的转发,地址不会发生改变,因为针对客户端来说只发送一次请求。

3.2 session 对象  

session对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。session对象内部使用Map类来保存数据的,因此保存数据的格式为“key/value”。

session对象的value可以使用复杂的对象类型,不仅仅局限于字符串类型。

3.2.1 session对象就做会话:即每次浏览器访问网站,服务器就会给这个请求创建一个会话,存储到服务器端,服务器根据每一个会话的ID区别每一个请求的用户。

3.2.2 常用方法:

setAttribute(String key,Object obj):以key/value形式保存数据。

getAttribute(String key:通过key获取数据。

getId:获取session id。

invalidate():设置session对象失效。

setMaxInactiveInterval(int interval):设置session对象的有效期。

removeAttribute(String key):移除session中的属性。

3.2.3 Session过期时间的三种设置方式:

a. 在tomcat服务器的web.xml文件中进行设置,tomcat默认时间为30分钟。

web.xml文件在conf文件夹下,具体设置如下:(单位为分钟)

<session-config>

<session-timeout>30</session-timeout>

</session-config>

b. 在项目中的web.xml文件中进行设置:

设置方法如a,优先顺序b>a,也就是说b设置了,a就无效了。

c. 在代码中设置:通过setMaxInactiveInterval()方法设置。

3.2.4 session 的销毁

a. 设置的时长到了以后自动销毁,常见的情况就是你在一个页面长时间不进行操作就要重新登录。

b. 调用invalidate()方法摧毁,常见的情况是注销登录。

3.2.5 注意事项

Session的存储类型可以是任意类型。存储位置在服务器端,安全性比较高。

在同一台电脑中,不同的浏览器也认为是不同的用户,也会分配一个session id。

session也会随着浏览器的关闭而失效。但请注意,session还会保留在服务器端,一直到设定的时间,才真正的被销毁。

3.3 application对象

application对象可以将信息保存在服务器中,知道服务器关闭,否则application对象中保存的信息会在整个应用中都有效。与session对象相比,application对象的生命周期更长,类似于系统的“全局变量”。

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

3.4 pageContext 对象

pageContext对象的作用是取得任何范围的参数,通过它可以获取jsp页面的out,request,response,session,application等对象。pageContext对象的创建和初始化都是由容器来完成的,在jsp页面中可以直接使用pageContext对象。

3.4.1 使用场景:在自定义标签时会频繁的使用pageContext对象;或者是定义一个方法需要用到多个对象时,传一个pageContext对象

就能解决问题。

3.5 out对象

out对象用于在web浏览器内输出信息,并管理应用服务器上的输出缓存区。在使用out对象输出数据时,可以对数据缓存区进行操作,及时清理缓存区中的残余数据,为其他的输出让出缓存空间。待数据输出完毕后,要及时关闭输出流。

PrintWriter:writer("内容");     直接向浏览器输出内容

JspWriter:writer("内容");          向jsp缓存区写出内容

JspWriter当满足一下条件之一时,缓存区的内容写出:

a. 缓存区满了

b. 刷新缓存区

c. 关闭缓存区

d. jsp页面执行完毕

3.6  response 对象

response对象代表对客户端的响应,主要是将jsp容器处理过对象传回到客户端。response对象也有作用域,它只是在jsp页面内有效。

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

常用方法:

response.sendRedirect ("index.jsp");

页面的重定向,地址会改变,因为针对客户端来说,一共发生了两次请求。  

3.7 page 对象

page对象代表jsp本身,只有在jsp页面内才合法。page隐含对象本质上包含当前servlet接口引用的变量,类似于Java编程中的this指针。

3.8 config 对象

confige对象的主要作用于取得服务器的配置信息。通过pageContext对象的getServletConfig()方法可以获取一个

config对象。当一个Servlet初始化时,容器把某些信息通过config对象传达给这个servlet。开发者可以在web.xml文件中为应用程序环境中的servlet程序和jsp页面提供初始化参数。

3.9 exception 对象

exception对象的作用是显示异常信息,只有在包含isErrorPage="true"的页面中才可以使用的,一般的jsp页面中使用该对象将无法编译jsp文件。exception对象和Java的所有对象一样,都具有系统提供的继承结构。exception对象几乎定义了所有异常情况。在Java程序中,可以使用try/catch关键字来处理异常情况;如果在jsp页面中出现没有捕获到的异常,就会生成exception对象,并把exception对象传送到page指令中设定的错误页面中,然后在错误的页面中处理相应的exception对象。

原文地址:https://www.cnblogs.com/su-chu-zhi-151/p/11877682.html

时间: 2024-10-13 22:45:44

jsp中的九大内置对象的定义及作用的相关文章

JSP中的九大内置对象

JSP隐含对象(又称内置对象),是指可以不加声明和创建就可以在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量. 在JSP中一共预先定义了九个隐含对象,分别为request, response, pageContext, session, application, out, config, page和exception. JSP隐含对象的类型如下表所示: 隐含对象 类型 作用域 request javax.servlet.http.HttpServletRequest reque

JSP数据交互——九大内置对象及其方法详解(一)

①既然说到JSP内置对象,那么什么是JSP内置对象呢? 解析:JSP内置对象,就是在编写JSP页面时,不需要做任何声明就可以直接使用的对象. 如下代码片段:  <% int[]  value  =  { 60, 70, 80 }; for(int i : value){ out.println(i); } %> 代码 out.println()可以实现页面的输出显示,但是在代码中并没有任何地方声明或创建这个out对象,没有创建就可以直接使用的原因就是out对象是JSP内置对象之一. ②为什么J

JSP中的9大内置对象四大域与servlet里的三大域

九大内置对象 隐式对象 说明 out 转译后对应JspWriter对象,其内部关联一个PringWriter对象 request 转译后对应HttpServletRequest/ServletRequest对象 response 转译后对应HttpServletRespons/ServletResponse对象 config 转译后对应ServletConfig对象 application 转译后对应ServletContext对象 session 转译后对应HttpSession对象 page

Jsp总结一(九大内置对象)

一.为什么要使用JSP: JSP 是简化 Servlet 编写的一种技术, 它将 Java 代码和 HTML 语句混合在同一个文件中编写,只对网页中 的要动态产生的内容采用 Java 代码来编写,而对固定不变的静态内容采用普通静态 HTML 页面的方式编写. jsp (全称):->Java Server Page: Java 服务器端网页. 在 HTML 页面中编写 Java 代码的页面.. 二.JSP的运行原理: JSP 本质上是一个 Servlet. 每个JSP 页面在第一次被访问时, JS

探索JSP中的 &quot;9大内置对象!&quot;

1.什么是JSP内置对象? jsp内置对象就是Web容器创建的一组对象,我们都知道Tomcat可以看成是一种Web容器,所以我们可以知道所谓的内置对象Tomcat创建的,使用内置对象时可以不适用new关键字, 直接使用即可. 2.什么是内置对象? 解析:就是Web容器创建的一组对象,当Tocmat启动时,这组对象在Tomcat服务器启动的时候加载到内存,可以用户直接使用. 3.JSP内置对象都有哪些? out(常用) out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区.在

JSP内置对象——九大内置对象简介与四种作用域范围以及Web程序的请求和响应模式

最近在学习JSP相关基础知识,我们都知道JSP当中存在一组不使用new关键字就可以在脚本和表达式中使用的对象,在Web开发中经常使用.为了能更好的理解这些对象,在此对JSP内置对象作一些归纳. 目录: JSP内置对象——九大内置对象简介与四种作用域范围以及Web程序的请求和响应模式 JSP内置对象——out(待更新) JSP内置对象——request/response(待更新) JSP内置对象——session(待更新) JSP内置对象——application(待更新) JSP内置对象——其他

Java Web(五) JSP详解(四大作用域九大内置对象等)

前面讲解了Servlet,了解了Servlet的继承结构,生命周期等,并且在其中的ServletConfig和ServletContext对象有了一些比较详细的了解,但是我们会发现在Servlet中编写一些HTML代码,是很不方便的一件事情,每次都需要out.println(HTML); 因此就出现了JSP,来解决这样的问题,JSP中的内容就是html,但是能够嵌套java语言,现在来详细了解一下JSP. --WH 一.JSP 1.什么是JSP? JSP(Java Server Pages):是

JSP(Java Server Page)九大内置对象

× Web程序的请求相应模式(请求[request].响应[response]) × form method="get"和method="post"提交方式的区别                  1.get:以明文形式通过url进行参数的传递,数据能在url获取,提交的数据最多不超过2KB,安全性低但效率比post高.                 适用于提交数据量不大,安全性不高的数据.eg:搜索.查询等               2.post:将用户提交的

黑马程序员【JSP九大内置对象和四个作用域】转载

http://www.cnblogs.com/fanfu1/p/4530980.html JSP九大内置对象和四个作用域 ------- android培训.java培训.期待与您交流! ---------- 在学习JSP的时候,首先就要先了解JSP的内置对象,什么是内置对象呢?内置对象也叫隐含对象,就是不需要预先声明就可以在脚本代码和表达式中随意使用.而这样的内置对象在JSP中一共有九个以及四个作用域,在下面的文章中我们会一一讲解. 现在我们先来说一下四个作用域,以便描述各大对象都分属于什么作