JSP的九大内置对象和四大作用域

时间:2019-02-21
本文章向大家介绍JSP的九大内置对象和四大作用域,主要包括JSP的九大内置对象和四大作用域使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Jsp内置对象:

       1.内置对象:(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用。

       2.使用内置对象的原因:提升开发效率

       3.九大内置对象:(request、response、session、out、page、application、exception、pageContext、config)

         (1)request对象: 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是                                                  HttpServletRequest类的实例。

         (2)response对象:response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是                                                                           HttpServletResponse类的实例。

         (3)session对象:session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到                                             客户端与服务器断开连接为止。它是HttpSession类的实例。

         (4)out对象:out对象是JspWriter类的实例,是向客户端输出内容常用的对象。

         (5)page对象: page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例。

         (6)application对象:application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器                                                 的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对                                                 此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。                                                 服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。
          (7)exception对象:exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个                                               JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang. ——                                                Throwable的对象。 

         (8)pageContext对象:pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本                                                   页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能                                                   的集大成者,它的本 类名也叫pageContext。

          (9)config对象:config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用                                         到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)。

 

Jsp的作用域:代表数据存储的范围。

      1.Jsp的四大作用域:(page、request、session、application

        这四大作用域,其实就是其九大内置对象中的四个,为什么说他们也是JSP的四大作用域呢?

        因为这四个对象都能存储数据,比如request.setAttribute()注意和request.setParameter()区分开来,一个是存储在域中的、  一个是请求参数,session.setAttribute()、application其实就是SerlvetContext,自然也有setAttribute()方法。而page作用域的操作就需要依靠pageContext对象来进行了。

         (1)page作用域:代表变量只能在当前页面上生效。

         (2)request:代表变量能在一次请求中生效,一次请求可能包含一个页面,也可能包含多个页面,比如页面A请求转发到                                 页面B。

         (3)session:代表变量能在一次会话中生效,基本上就是能在web项目下都有效,session的使用也跟cookie有很大的关                                    系。一般来说,只要浏览器不关闭,cookie就会一直生效,cookie生效,session的使用就不会受到影响。

          (4)application:代表变量能一个应用下(多个会话),在服务器下的多个项目之间都能够使用。比如baidu、wenku等共享                                       帐号。