Servlet与JSP进阶六:ServletContext全局对象;Java Web三大作用域对象总结;

本篇博客的主要内容是:

        ● ServletContext对象简介;获取方法,设置属性方法;

        ●  ServletContext对象演示的几个例子;

        ●HttpServletRequest对象、HttpSession对象、ServletContext对象:Java Web三大作用域对象总结

ServletContext简介

        ● ServletContext:是web应用程序的全局对象;

        ● 在整个web应用程序中,有且仅有一个ServletContext对象;

        ● ServletContext随着web应用程序的启动而自动创建,在web应用程序,重启或者关闭时,其进行销毁;

ServletContext:


ServletContext对象获取,设置属性,获取属性


 情况一:启动web工程:访问ServletContextInitSevlet,然后访问ServletContextDefaultServlet

数据初始化:给ServletContext对象设置程序


 情况二:其概况一的基础上,关闭浏览器窗口,重新打开,直接访问ServletContextDefaultServlet:

只要是web工程不重启,不关闭,ServletContext对象就不会消失;

说明,对于ServletContext对象来说,只要是设置了自定义属性,其就会在应用程序全局生效,无论什么时候都可以获取这个属性(前提是web工程不关闭、不重启啦)


 Java Web三大作用域对象总结

          ● HttpServletRequest对象:作用域和生命周期最小;

…………………………

浏览器向服务器发送应该请求,服务器处理这个请求时,可以认为服务器创建了一个HttpServletRequest对象去接收这个浏览器发过来的请求:(只是这样理解哦,不一定对哎)

…………………………

HttpServletRequest对象(请求对象):生命周期最短的对象,当一个请求送往Tomcat,这个请求就会被创建,当Servlet处理完成后,产生了响应,并且返回给浏览器,则当前的HttpServletRequest对象就会被销毁;可以说HttpServletRequest对象是一个瞬时对象,用完了就会扔掉;


           ● HttpSession对象:作用域和生命周期中等;

…………………………

第一次用户请求的时候,Tomcat就针对本次会话,已经在自己内存中创建了一个Session对象,我们可以通过request.getSession()的方法去获取这个Session:(只是这样理解哦,不一定对哎):发现,浏览器发过来的HttpServleetRequest对象很关键:

…………………………

HttpSession对象(用户会话对象):用于保存与浏览器窗口多对应的数据;Session是在第一次用户发来请求的时候创建的,如果超时了(如默认超过30min没有被访问),这个HttpSession对象就会被销毁;关闭浏览器窗口时,只是将存储在浏览器中的那个JSESSIONID的cookie给抛弃了(但是,这个JSESSIONID在Tomcat内存中session对象并没有立即销毁;)


          ● ServletContent对象:作用域和生命周期最大

…………………………

Web应用程序启动的时候,Tomcat已经在自己内存中创建了ServletContext对象,我们可以通过request.getServletContext()的方法去获取这个ServletContext对象:(只是这样理解哦,不一定对哎):再次发现,浏览器发过来的HttpServleetRequest对象很关键:

…………………………

ServletContent对象(应用程序全局对象):在web应用程序启动的时候,就被创建了;web应用程序重启或者关闭时会被销毁;


平时开发时:如果能用作用域小的对象就能完成的功能,就不要用作用域大的对象

背后默默奉献的是Tomcat哎;

发现Cookie被“抛弃了”,cookie作为Session的基础,已经底层支持Session了,转为幕后工作者了………………(只是这样理解,不一定对哎)

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值