温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-07-04 21:03:32 阅读:314 作者:yayaAA 栏目:开发技术
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

    每个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大对象的引用。

    1page当前servlet对象

    2confingservletconfig对象

    3application servletcontext对象,当前web应用

    4response

    5request

    6session

    7out

    8exception在错误提示页面的对象,表示上一页页面抛出的异常。

    9pageContext     代表整个JSP页面对象

*out

4jsp页面中需要进行数据输出时,不要自己获取response.getWriter,而是要使用out进行输出,防止即用out又用response.getWriter而导致输出顺序错乱的问题

*pageContext

(1)可以作为入口对象获取其他八大隐式对象的引用

getException方法返回exception隐式对象

getPage方法返回page隐式对象

getRequest方法返回request隐式对象

getResponse方法返回response隐式对象

getServletConfig方法返回config隐式对象

getServletContext方法返回application隐式对象

getSession方法返回session隐式对象

getOut方法返回out隐式对象

(2)域对象,四大作用域的入口,可以操作四大作用域中的域属性

作用范围: 当前jsp页面

生命周期: 当对jsp页面的访问开始时,创建代表当前jspPageContext,当对当前jsp页面访问结束时销毁代表当前jsppageContext

作用:在当前jsp中共享数据  

        

public void setAttribute( name, value)

public java.lang.Object getAttribute( name)

public void removeAttribute( name)

public void setAttribute( name,  value, int scope)

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

public void removeAttribute( name, int scope)

PageContext.APPLICATION_SCOPE      

JSP运行原理和九大隐式对象PageContext.SESSION_SCOPE

PageContext.REQUEST_SCOPE

PageContext.PAGE_SCOPE              

                    

(3)提供了请求转发和请求包含的快捷方法

pageContext.include("/index.jsp");

pageContext.forward("/index.jsp");

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×