四大作用域对象总结

一、application(ServletContext)

1、生命周期:当Web应用被加载进容器时创建代表整个web应用的application对象,当服务器关闭或Web应用被移除时,application对象跟着销毁。  

2、作用范围:整个Web应用。

3、作用:   

    a)application.setAttribute(“key”,Object value):存储整个web应用公用的数据

b)在不同Servlet 之间转发(不常用)    

  this.getServletContext().getRequestDispatcher("/servlet/Demo10Servlet").forward(request,

response);   

  方法执行结束,service就会返回到服务器,再有服务器去调用目标servlet,其中request会重新创建,并将之前的request的数据拷贝进去。      

注意:由于request对象也有getRequestDispatcher("**")方法,所有我们开发是通常使用request调用该方法实现重定向。

 c)读取资源文件。

1、由于相对路径默认相对的是java虚拟机启动的目录,所以我们直接写相对路径将会是相对于tomcat/bin目录,所以是拿不到资源的。如果写成绝对路径,当项目发布到其他环境时,绝对路径就错了。    

 

 2、为了解决这个问题ServletContext提供了:

  this.getServletContext().getRealPath("/1.properties"),给进一个资源的虚拟路径,将会返回该资源在当前环境下的真实路径。        

this.getServletContext().getResourceAsStream("/1.properties"),给一个资源的虚拟路径返回到该资源真实路径的流。    

 

(了解)3、当在非servlet下获取资源文件时,就没有ServletContext对象用了,此时只能用类加载器     

classLoader.getResourceAsStream("../../1.properties"),此方法利用类加载器直接将资源加载到内存中,有更新延迟的问题,以及如果文件太大,占用内存过大。     

classLoader.getResource("../1.properties").getPath(),直接返回资源的真实路径,没有更新延迟的问题。

 

二、session 域 (HttpSession)

    HttpSession 在服务器中,为浏览器创建独一无二的内存空间,在其中保存会话相关的信息。  

    1、生命周期:在第一次调用 request.getSession() 方法时,服务器会检查是否已经有对应的session,如果没有就在内存  中创建一个session并返回。   

当一段时间内session没有被使用(默认为30分钟),则服务器会销毁该session。   

如果服务器非正常关闭(强行关闭),没有到期的session也会跟着销毁。   

如果调用session提供的invalidate() ,可以立即销毁session。   

 

  注意:服务器正常关闭,再启动,Session对象会进行钝化和活化操作。同时如果服务器钝化的时间在session 默认销毁时间之内,则活化后session还是存在的。否则Session不存在。  如果JavaBean 数据在session钝化时,没有实现Serializable 则当Session活化时,会消失。

 

    2、作用范围:一次会话。  

    3、作用:保存登录的用户信息、购物车信息等

三、request域  --(HttpServletRequest)

 

    1、生命周期:在service 方法调用前由服务器创建,传入service方法。整个请求结束,request生命结束。  

 

    2、作用范围:整个请求链(请求转发也存在)。  

 

    3、作用:  在整个请求链中共享数据。最常用到:在Servlet 中处理好的数据交给Jsp显示,此时参数就可以放置在Request域中带过去。

 

四、pageContext域—(PageContext)

 

    1、生命周期:当对JSP的请求时开始,当响应结束时销毁。  

 

    2、作用范围:整个JSP页面,是四大作用域中最小的一个。  

 

    作用:   

 

        (1)获取其它八大隐式对象,可以认为是一个入口对象。   

 

        (2)获取其所有域中的数据      

 

            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 中代表域的常量      

 

                PageContext.APPLICATION_SCOPE      

 

                PageContext.SESSION_SCOPE      

 

                PageContext.REQUEST_SCOPE      

 

                PageContext.PAGE_SCOPE            

 

   findAttribute方法,在四大域中搜寻属性,搜寻的顺序是page域、request域、session域、application域,从小域到大域开始搜索,如果搜索到就直接获取该值,如果所有域中都找不到,返回一个null(与el表达式不同,此处返回null,对网页是不友好的)         

 

  (3)跳转到其他资源      其身上提供了forward和include方法,简化重定向和转发的操作

转载于:https://www.cnblogs.com/Gandy/p/7382278.html

Autosar MCAL-S32K324 Fee配置-基于EB Autosar MCAL S32K324 Fee配置详解 阅读详情

相关推荐

【论文导读】ICDM2018|SASRec---基于自注意力机制的序列推荐(召回)

前言本次分享2018年发表在ICDM上的论文----「Self-Attentive Sequential Recommendation」。主要是应用self-attention机制来做一...

Blank_Space 8033

四大域对象

Springboot之任务 前言 在我们的工作中,常常会用到异步处理任务,比如我们在网站上发送邮件,后台会去发送邮件,此时前台会造成响应不动,直到邮件发送完毕,响应才会成功,所以我们一般会采用多线程的方式去处理这些任务。还有一些定时任务,比如需要在每天凌晨的时候,分析一次前一天的日志信息。还有就是邮件的发送,微信的前身也是邮件服务呢?这些东西都是怎么实现的呢?其实SpringBoot都给我们提供了对应的支持,我们上手使用十分的简单,只需要开启一些注解支持,配置一些配置文件即可!那我们来看看吧~

weixin_49849351的博客 5049

Ren’py教程《从入门到精通》

Ren’py是什么?Ren'py是一款用于制作视觉小说、冒险游戏、galgame的游戏制作工具,被来自世界各地的数千名创作者使用。Ren'py的名字由Ren’ai和Python混合而成,而Python也是Ren'py所使用的环境语言。Ren'py可以帮助你使用文字、图像和声音来讲述在计算机和移动设备上运行的交互式故事。这些既可以是视觉小说,也可以是生活模拟游戏。易于学习的脚本语言允许 任何人都可以有效地编写大型视觉小说,而它的Python 脚本足以应对复杂的 模拟游戏。

2302_77140651的博客 1万+

域对象

域对象 可以在不同Servlet之间传递数据的对象,就是域对象 只要是域对象都有如下方法 setAttribute(name,value);存储数据的方法 getAttribute(name);根据name获取对应数据值 removeAttribute(name);删除数据 1 2 3 4 5 6 request域对象 request里面的数据只有当前的一个请求域内,也就是请求转发前后的servl...

donnieliu的博客 655

【论文精读】Formal Mathematical Reasoning: A New Frontier in AI

注:本文根据师兄汇报内容总结。

m0_60634555的博客 1189

生物信息学新手必看:MAFFT多序列比对从安装到实战(附参数优化技巧)

本文为生物信息学新手提供了MAFFT多序列比对工具的完整指南。从Linux环境下的安装部署,到核心算法策略(如FFT-NS-i、L-INS-i)的选择逻辑,再到空位罚分等关键参数的深度解析与优化技巧,手把手教你完成从原始序列到高质量比对结果的实战流程,为后续进化树构建等分析奠定坚实基础。

weixin_29230773的博客 485

域对象-服务器端四大域对象的分析

一、域对象的概念 域对象:可以在不同的servlet|jsp之间进行数据传递与共享的对象就是域对象。 Java服务器端有四大域对象: Servlet的域对象:ServletContext、request、session JSP的域对象:pageContext API:存储数据:setAttribute(name,value) 获取数据:getAttribute(name) 删除数据:removeAttribute(name) 四大域对象的作用范围: ServletContext域对象:整个web项目(一个

ggh0314的博客 2955

Rclone替代RaiDrive?零广告免费挂载Alist WebDAV到Windows资源管理器(含自启脚本)

本文详细介绍了如何使用开源工具Rclone替代RaiDrive,实现零广告、全免费的Alist WebDAV挂载方案。通过深入解析配置参数、提供完整的自启动解决方案和解决常见问题,帮助用户在Windows资源管理器中高效管理云存储,提升使用体验。

weixin_33709364的博客 638

SpringMVC学习(4)—— 域对象(作用域)

域对象有4个: ①page(PageContextImpl):当前jsp页面范围内有效 ②request(HttpServletRequest):一次请求响应范围有效,同一客户端的不同请求,无法获取域对象中的值 ③session(HttpSession):一次会话范围有效,同一客户端在一次会话内的多个请求,都可以获取到session保存作用域内的值;可以看成一次浏览器关闭 ④application(ServletContext):一次应用程序范围;可以看成一次服务器关闭 一.向request域..

Archer__13的博客 1817

STM32驱动AS5600磁性旋转位置传感器模块

文章目录简介引脚定义I2C接口写数据读数据从指定的地址开始读数据驱动程序cubeMX配置驱动程序`bsp_as5600.h``bsp_as5600.c`测试程序参考资料 简介 AS5600 是一款易于编程的磁性旋转位置传感器,具有高分辨率 12 位模拟或 PWM 输出。 这种非接触式系统测量径向磁化轴上磁铁的绝对角度。 该 AS5600 专为非接触式电位计应用而设计,其坚固的设计消除了任何同质外部杂散磁场的影响。 引脚定义 I2C接口 7位设备地址为0x36(二进制表示为0110110) 支持标准模式和

ApexYuan 1万+

AUTOSAE软件配置-项目标准配置 (PSC) 导入达芬奇( DaVinci Configurator)

文件是“可拆分的”,这意味着如果格式符合 AUTOSAR 拆分规则,则可以与其他。)是一个ARXML文件,主要由OEM提供,其中包含。)工件,可以作为输入文件导入到达芬奇配置器专业版。导入的参数将以只读方式处理。不允许在多个 ARXML 文件中导入一个。的已存在数据或从输入文件派生的数据。可以作为输入文件导入到另一个。文件会覆盖用户配置的基本。元素和诊断数据预配置。定义 [数据结构]。中,可以导出一个或多个。

m0_49148264的博客 1012

Java中的域对象

什么是域对象?那些能放数据并存储传递数据作为数据存放区域的对象能够存储数据,获取数据,传递数据的对象设置修改数据获得数据的方法移除数据的方法有范围 : 一次请求内有效,请求转发时数据可以传递,除此之外该域没有办法实现数据共享生命周期 :每发生一次请求创建一个独立的请求域使用service方法中或者请求转发有效销毁 请求结束,已经向浏览器响应数据测试代码向request域中放入数据request域中读取数据。

listeningdu的博客 902

【数字IC设计】芯片设计中的RDC

在芯片设计中,RDC是的缩写,类似于CDC(clock domain crossing),由于现在SOC芯片是有很多ECUs组成,为了使整个系统能够快速从复位中恢复, 用户希望SOC里面每个ECU模块都可以有自己独立的异步复位信号,这样可以在出问题的时候只复位有错误逻辑的模块,而使其它模块保持正常工作。

qq_40268672的博客 2185

JavaWeb之​​四大作用域和​​九大内置对象

JSP页面无需声明即可直接使用的9个对象,分为三类:作用域相关对象​​​​request​​:封装HTTP请求数据,作用域为Request。​​response​​:封装服务器响应(如重定向sendRedirect())。​​session​​:会话管理对象,作用域为Session。​​application​​:即ServletContext,作用域为Application。​​pageContext​​:入口对象,可获取其他8个内置对象,作用域为Page。输入输出对象​​。

xrkhy的博客 1107

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jsp四大作用域和九大对象

常用于服务器间同一请求不同页面之间的参数传递,常应用于表单的控件值传递。

花开富贵的博客 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

头哥educoder - JSP 隐式对象与四大作用域

我们可以通过这个对象来访问 page(作用域范围:当前页面)、request(作用域范围:当前请求)、session(作用域范围:当前会话) 和 application(作用域范围:当前 Web 应用) 作用域下的变量(这几个作用域我们会在本实训的最后一关为大家详细介绍)。setAttribute(String name,Object value,int scope) void 设定属性对象的名称为:name 属性对象的值为:value 作用域为:scope 的属性对象。

无极的博客 1271

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

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

JSP九大内置对象和四大作用域JSP的原理JSP九大内置对象JSP四大作用域 JSP的原理 jsp在编译后会转换为java类,在本质上就是一个Servlet 当浏览器访问http://localhost:8080/index.jsp。服务器发现后缀为.jsp,它会根据路径找到index.jsp⽂件,会将index.jsp翻译成index_jsp.java⽂件,对这个java⽂件进⾏编译,产⽣⼀个index_jsp.class⽂件,将class⽂件加载运⾏。 JSP九大内置对象 JSP四大作用域 ...

路奇-长弓 6745

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

四大作用域: page:数据只能在当前页面生效 request:数据只能在一个请求中生效 session:数据只能在一个会话中生效,浏览器关闭失效 application:数据只能在应用中生效,服务器关闭失效 九大内置对象: 四大作用域是九大内置对象中的其中四个 out:用于JSP向客户端/浏览器发送文本数据 pageContext:可以获取所有的内置对象 response:用于相应客户端的请求 ...

qq_42102428的博客 233

JavaWeb中的九大内置对象、四大作用域、session的生存周期

JavaWeb中的九大内置对象、四大作用域、session的生存周期 转载于:http://www.yelook.com/1439.html JSP中的九大内置对象 JavaWeb中,JSP引擎在将JSP转译为 Java 文件时,就创建了一系列对象,这些内置对象不需要声明和实例化,可以直接进行引用,这九大内置对象分别是: 1.out 2.request 3.response 4.session 5.application 6.exception 7.cookie 8.config 9.page 在 JSP

qq_45782051的博客 1115

java九大内置对象和四大作用域

Session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间切换,服务器应当通过某种办法知道这是一个客户,就需要Session对象。

林在闪闪发光的博客 3149

js、jsp 的内置对象和jsp的四大作用域对象

今天把前端不常用到的js 、jsp内置对象和四大作用域对象总结了一下。其实四大作用域对象我们在前端页面中是可以省略的。这个时候前端页面的解析器会自动从pageContext(页面作用域对象) — request(请求作用域对象) —>session(会话作用域对象)—>application (全局作用域对象)依次查找是否存储了指定的值,这也是下班前大多数程序员喜欢干的 js中的内置...

木兮兮 434

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

九大内置对象 : 1、request对象   request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的bai请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对象的作用域为一次请求。  2、response对象   response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,只在JSP页面内有效。  3、ses

WangYuanhang123的博客 1690

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

1.Jsp九大内置对象 内置对象 类 application ServletContext 全局对象 session HttpSession 会话对象 request HttpServletRequest 请求对象 pageContext PageContext 当前页对象 response HttpServletResponse 响应对象 out JspWriter 输出对象 page this 当前对象 config ServletConfig 配置对象

weixin_40263829的博客 194

JSP九大内置对象,四大作用域

JSP九大内置对象 内置对象是在java脚本不需要创建,就可以直接使用的对象。 ①request:代表请求 (用得多) HttpServletRequest对象。就是servlet里面的request 常用属性: setCharacterEncoding getParameter setAttribute getAttribute getSession getRequestDispatcher ②...

Java开发,人工智能,边缘计算,致力于掌握前沿技术 2106

JSP九大内置对象四大作用域有哪些 分别对应Servlet中的什么Java类型

九大内置对象 及对应的Java类 内置对象 对应的Servlet中的Java类 request HttpServletRequest response HttpServletResponse session HttpSession application ServletContext out JSPWriter pageConte...

墨落青衫 690

JSP四大作用域(9大内置对象)

更多免费教学文章请关注这里     1、什么是JSP? JSP本质上就是一个servlet,因为servlet输出html太麻烦了,所以就有了JSP,JSP就是专门用来书写html的,当然其中也能写java代码。 2、JSP的内容包括什么? 模版数据和元素。其中元素有包括脚本(java代码)、指令(页面属性)、和行为(标签,为了JSP中不嵌入那么多java代码衍生的) 3、JSP中九大内置对象是哪...

Camel 974
上一篇: servlet虚拟路径映射
下一篇: Calendar抽象类返回自己和Integer.TYPE和int.class
av1231234
博客等级 码龄12年 3粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值