Java Web三大作用域对象

这三个对象的作用域和生命周期——从上往下依次递增: 上面最小,下面最大。

1、HttpServletRequest——请求对象

HttpServletRequest是生命周期最短的一个对象。

当一个请求送往tomcat时,这个请求就被创建了。当servlet处理完后,产生了响应并且返回给浏览器,则当前请求对象就会被销毁。

可以说request对象是一个瞬时对象,用完就抛弃。

2、HttpSession——用户会话对象

Session对象叫做用户会话对象,用于保存与浏览器窗口所对应的数据。

Session对象是用户第一次发来请求时被创建的,默认情况下如果Session有30分钟没有被访问,那么这个Session对象就会被销毁。

相对来说更加持久的就是HttpSession对象,保存与浏览器所对应的数据、生命周期比request大一些。

误解区:当我们直接关闭浏览器窗口时,Session对象依然存在,只是把浏览器中的Sessionid的cookie给抛弃了。其数据还在tomcat里,默认保留30分钟。

3、ServletContext——Web应用程序全局对象

ServletContext对象解释:Servlet上下文对象,是web应用程序的全局对象。

一个Web应用程序只会创建一个ServletContext对象。

ServletContext随着Web应用程序启动而自动创建、在web应用程序重启或者关闭时会被销毁。

可以说Java Web应用程序的三大作用域对象会伴随着我们的开发从始至终。

另外有些开发建议:

因为作用域是从小到大依次递增的,为了程序维护的需要和资源避免浪费的情况、能用小作用域完成的功能就不要使用大的作用域、以后的开发中request将会是我们打交道最多的对象,至于Session和Context使用相对较少。

java简述会话对象的生命周期_简述Java Web三大作用域对象相关推荐

  1. python对象的生命周期_(python)通过一个代码例子来分析对象的生命周期 | 学步园...

    最近在学习python,看的是<简明python教程>,写的很是通俗易懂. 在一个类和对象的变量的例子中,看到代码运行结果突然想到在python中对象的生命周期的问题,代码运行结果: #! ...

  2. python对象的生命周期_(python)通过一个代码例子来分析对象的生命周期

    最近在学习python,看的是<简明python教程>,写的很是通俗易懂. 在一个类和对象的变量的例子中,看到代码运行结果突然想到在python中对象的生命周期的问题,代码运行结果: #! ...

  3. java对象什么时候回收_Java对象的生命周期与垃圾回收以及四种引用

    创建对象的方式用new语句创建对象. 使用反射,调用java.lang.Class或java.lang.reflect.Constructor的newInstance()实例方法. 调用对象的clon ...

  4. Java 对象的生命周期

    Java对象的生命周期 在Java中,对象的生命周期包括以下几个阶段: 创建阶段(Created) 应用阶段(In Use) 不可见阶段(Invisible) 不可达阶段(Unreachable) 收 ...

  5. Java对象的生命周期与作用域的讨论(转)

    导读: Java对象的生命周期大致包括三个阶段:对象的创建,对象的使用,对象的清除.因此,对象的生命周期长度可用如下的表达式表示:T = T1 + T2 +T3.其中T1表示对象的创建时间,T2表示对 ...

  6. java 对象 jvm生命_JVM对象的生命周期

    一旦一个类被装载.连接和初始化,它就随时可以被使用.程序可以访问它的静态字段,调用它的静态方法,或者创建它的实例.作为Java程序员有必要了解Java对象的生命周期. 类实例化 在Java程序中,类可 ...

  7. java对象的生命周期及回收

    在网上看到一篇不错的文章,记录下来备忘. 要理解java对象的生命周期,我们需要要明白两个问题, 1.java是怎么分配内存的 ,2.java是怎么回收内存的. 喜欢java的人,往往因为它的内存自动 ...

  8. 详谈java类和对象的生命周期

    引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告 ...

  9. java中的的一些生命周期,Java中对象的生命周期

    Java中对象的生命周期 (1) 对象生命周期的开始 对象生命周期开始时,需要为对象分配内存,并且初始化它的实例变量: 对象生命周期结束 Java虚拟机的垃圾回收线程回收对象的内存. (2) 创建一个 ...

最新文章

  1. Redis的KEYS命令引起宕机事件
  2. Jquery基础:append、prepend、after、before、appendTo的区别
  3. stm32与arm7比较(经典)
  4. php manager 怎么用,Windows 2008 R2下如何利用PHPManager对PHP进行配置
  5. 材料成型计算机模拟第三版,材料成型计算机模拟实验报告模板学习.doc
  6. 围棋经典棋谱_秀秀老师:茶艺师也要学好围棋
  7. php 类加载,关于PHP中类的加载
  8. 就国内某个程序员问答网站的简单的分析
  9. 刘作虎:一加 8 系列新品将加入无线充电功能
  10. C++ 字符串复制函数substr
  11. Intel FPGA 的时序约束
  12. HDFS体系结构(NameNode、DataNode详解)
  13. java判断map是否为空_Java自定义Exception
  14. wpf-容易误解的Image
  15. 模型预测控制参数调整问题
  16. 计算机一级如何添加对角线,如何在表格中添加对角线
  17. java操作Excel表格使用EasyExcel
  18. 东南亚lazada平台分跨境店和本土店两种,二者的区别都写在这里了
  19. SPI MOSI和MISO 相位不同
  20. python代码实现卷积示意图快速制作

热门文章

  1. 调试Angular指令实现时一个有用的内部属性:__ngContext__
  2. SAP Spartacus 如何调试待翻译文本的 place holder 和翻译之后的值
  3. 如何到SAP官网上查询某产品的roadmap - 路线图
  4. 一个基于ngrx的Angular图书搜索应用,带网络请求
  5. 什么是SAP HANA Database Procedure(数据库过程)
  6. SAP云平台上两个ABAP系统实例之间的互连
  7. Hybris Commerce里的持久层
  8. 使用Cloud Application Programming模型开发OData的一个实际例子
  9. 把Hybris安装时输出的日志重定向到一个本地文件中
  10. SAP Fiori s2 controller init