当前位置:  编程技术>java/j2ee

JSP运行原理和九大隐式对象说明

    来源: 互联网  发布时间:2014-10-18

    本文导语:  每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用方式进行调用。 由于JSP第一次访问时会翻译成servlet,...

每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用方式进行调用。

由于JSP第一次访问时会翻译成servlet,所以第一次访问通常会比较慢,但第二次访问,JSP引擎如果发现JSP没有变化,就不再翻译,而是直接调用,所以程序的执行效率不会受到影响。

JSP引擎在调用JSP对应的_jspServlet时,会传递或创建9个与web开发相关的对象供_jspServlet使用。JSP技术的设计者为便于开发人员在编写JSP页面时获得这些web对象的引用,特意定义了9个相应的变量,开发人员在JSP页面中通过这些变量就可以快速获得这9大对象的引用。

这9个对象分别是哪些,以及作用也是笔试经常考察的知识点。

Jsp九大隐式对象

request       //代表request对象

response       //代表response对象

config        //代表servletConfig对象

application    //代表servletContext对象

exception   

Session

page

out           //代表response.getWriter() ,字符输出流对象 

pageContext

pageContext对象

pageContext对象是JSP技术中最重要的一个对象,它代表JSP页面的运行环境.

这个对象不仅封装了对其它8大隐式对象的引用,

它自身还是一个域对象,可以用来保存数据。

并且,这个对象还封装了web开发中经常涉及到的一些常用操作,例如引入和跳转其它资源、检索其它域对象中的属性等。

通过pageContext获得其他对象

getException方法返回exception隐式对象

getPage方法返回page隐式对象

getRequest方法返回request隐式对象

getResponse方法返回response隐式对象

getServletConfig方法返回config隐式对象

getServletContext方法返回application隐式对象

getSession方法返回session隐式对象

getOut方法返回out隐式对象

pageContext封装其它8大内置对象的意义,思考:如果在编程过程中,把pageContext对象传递给一个普通java对象,那么这个java对象将具有什么功能?

pageContext作为域对象

pageContext对象的方法

public void setAttribute(java.lang.String name,java.lang.Object value)

public java.lang.Object getAttribute(java.lang.String name)

public void removeAttribute(java.lang.String name)

pageContext对象中还封装了访问其它域的方法

public java.lang.Object getAttribute(java.lang.String name,int scope)

public void setAttribute(java.lang.String name, java.lang.Object value,int scope)

public void removeAttribute(java.lang.String name,int scope)

代表各个域的常量

PageContext.APPLICATION_SCOPE

PageContext.SESSION_SCOPE

PageContext.REQUEST_SCOPE

PageContext.PAGE_SCOPE


    
 
 

您可能感兴趣的文章:

  • JSP怎么运行的?原理?
  • ?:jsp的运行机制或运行原理是如何的,who能给我一个解释,谢谢!
  • JSP中实现系统登录后的退出原理及代码
  • JSP开发入门(二)----JSP语法的基本原理
  • 有关JavaBean中的资源释放问题,(熟悉jsp+JavaBean原理的高手请进)
  • jsp自定义标签技术(实现原理与代码以及平台搭建步骤)
  • jsp hibernate 数据保存操作的原理
  • 帮帮新手,jsp面向对象吗?想把c/s结构的引用用jsp改写,交互功能可以实现吗
  • 如何将JSP的out对象传递给JSP引用的bean?
  • 能在JavaScript中访问Jsp页面的Java对象?
  • JSP开发入门(四)--JSP的内部对象
  • jsp Recordset 对象有 PageSize 成员吗
  • 后台数据库是Access,如何将一个文件用jsp写入OLE对象字段??????
  • JSP 获取Spring 注入对象示例
  • 请问各位对于jsp中用到的对象怎么查找它的帮助!
  • 请教:关于JSP的request对象的问题
  • 请教在Servlet中如何取得JSP中提交的radio对象和checkbox的值?
  • 请教:为什么在<%!...%>内部定义的函数不能用jsp页面缺省的对象如:out,request,session,等。
  • Servlet如何返回一个对象给JSP(No Session)?
  • 如何将jsp的参数或对象传递给javascript的函数
  • 重分悬赏!!!哪儿有关于JAVA,JSP的各种对象,方法,属性的详细的中文参考书下载.(140分,分批给)
  • 为什么新生成一个session对象后,jsp page中的scope=session的bean会不正常?
  • 在线等待:jsp内置对象的详细使用例子.要代码.如果给出详细资料也可考虑给分.100大洋伺候.
  • JSP的内部对象
  • java或者是jsp中处理字符串、时间等的函数在那里可以查到资料?或者他们都是采用对象的方式?那么资料在那里可以查到?
  • 多个jsp页面共享一个js对象的超级方法
  • window.top[_CACHE]实现多个jsp页面共享一个js对象
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • JBuilder运行JSP的问题,一次只运行一个JSP页面
  • jsp程序运行一次后,再修改原jsp程序,为什么运行还是的还是原来的程序??
  • 用JBUILDER如何调试一个JSP工程,一次只运行一个JSP页面?
  • sevelet,bean ,jsp已经编好了,怎样放在tomcat下,让jsp正常运行
  • asp只能在windows上运行吗,jsp可以在windows也可以在unix上运行吗
  • tomcat下servlet无法运行,但是jsp可以运行,在线等待。。。
  • jbuilder下写的javabean与jsp程序正常运行,如何转到weblogic或其他的服务器上运行???
  • 有谁使用JRun,为何可以运行Servlet,却不能运行jsp?
  • 急急急!!!Solaris中JSP运行环境(tomcat)应如何设置才能使jsp连接到ORACLE???
  • ?:jsp的运行机制或运行原理是如何的,who能给我一个解释,谢谢! iis7站长之家
  • 请教jsp的运行环境
  • 紧急:jsp运行问题,送100分(在线等)
  • 运行JSP、SERVLET需要那些配置?需要如何设置?请各位指点。
  • 新手,嘿嘿。请问在IIS下可否运行JSP?==》
  • 为什么在JBuilder下可以运行的JSP工程,到了tomcat4.0下就不能运行了
  • 怎样才能运行JSP程序。。。。。。
  • 为什么jswdk1.0.1中的examples中的Servlet能正常运行,而jsp却无法运行???解决立刻给分!!!
  • tomcat运行jsp出错。(请各位能详细指点,谢谢。)
  • 请教win2000下配置运行jsp环境的问题
  • JBuilder7 下的EJB、Jsp 运行问题
  • JSP中清空cookie代码参考
  • 现有1.jsp、2.jsp、3.jsp三个文件,我怎么在3.jsp文件中得到1.jsp中输入的值?
  • 一个框界网爷包含上下两个网页a1.jsp和a2.jsp,怎么实现a1.jsp自身不变且提交数据到下面的a2.jsp呢?不胜感激,急..
  • 请问jsp和serlet之间怎么通讯,jsp和jsp之间呢?
  • 请问<%@include file="abc.jsp"%>与<jsp:include page="abc.jsp"/>之间的差别
  • response.sendRedirect("index.jsp") 和 <jsp:forward page="index.jsp"/>的区别?
  • 想把一个jsp转到另一个jsp页面,要穿参数,中文的(jsp变量)。谁教教我?!
  • aaa.jsp有如下链接,当单击该链接时将id值传递给bbb.jsp,怎样在bbb.jsp中引用这个id值?
  • jsp+bean还是jsp+ejb还是jsp+servlet还是asp+activex好?
  • 谁能告诉我,怎么调试jsp程序呀!我在jsp中调用java,但是Tomcat这家伙只会给我报jsp文件出错。这可怎么办呀?
  • jsp中如何获得当前jsp文件所在的目录,用request.getServletPath()得到的路径含有jsp文件名,有没有办法得到目录(不含文件名)?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3