返回顶部
首页 > 资讯 > 精选 >Java有哪四大域对象
  • 929
分享到

Java有哪四大域对象

2023-06-17 06:06:12 929人浏览 薄情痞子
摘要

Java有哪四大域对象,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、ServletContext生命周期:当WEB应用被加载进容器时创建代表整个web应用的

Java有哪四大域对象,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

一、ServletContext

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

作用范围:整个Web应用。

作用:

Java有哪四大域对象

a)在不同Servlet 之间转发

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

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

b)读取资源文件。

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(),直接返回资源的真实路径,没有更新延迟的问题。

二、Request 域

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

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

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

三、Session 域

httpsession 在服务器中,为浏览器创建***的内存空间,在其中保存会话相关的信息。

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

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

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

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

注意:服务器正常关闭,再启动,Session对象会进行钝化和活化操作。同时如果服务器钝化的时间在session 默认销毁时间之内,

则活化后session还是存在的。否则Session不存在。  如果JavaBean 数据在session钝化时,没有实现Serializable 则当Session活化时,会消失。

作用范围:一次会话。

四、PageContext 域

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

作用范围:整个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方法,简化重定向和转发的操作

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网精选频道,感谢您对编程网的支持。

--结束END--

本文标题: Java有哪四大域对象

本文链接: https://lsjlt.com/news/287435.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java有哪四大域对象
    Java有哪四大域对象,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、ServletContext生命周期:当Web应用被加载进容器时创建代表整个web应用的...
    99+
    2023-06-17
  • jsp作用域对象有哪些
    在JSP中,有以下几种作用域对象:1. Page作用域(page scope):Page作用域是最小的作用域,它只在当前JSP页面中...
    99+
    2023-09-22
    jsp
  • java对象池有哪些
    java中的对象池有:1.SoftReferenceObjectPool;2.StackObjectPool;3.GenericObjectPool;4.GenericKeyedObjectPool;java中的对象池有以下几种SoftRe...
    99+
    2024-04-02
  • java对象的引用有哪些
    本篇内容介绍了“java对象的引用有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!java对象的引用reference分为有强引用,软引...
    99+
    2023-06-17
  • java有哪些jsp内置对象
    这篇文章主要介绍“java有哪些jsp内置对象”,在日常操作中,相信很多人在java有哪些jsp内置对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java有哪些jsp内置对象”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-20
  • Python面向对象的四大特征是什么
    这篇文章主要讲解了“Python面向对象的四大特征是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python面向对象的四大特征是什么”吧!1.抽象抽象是隐藏多余细节的艺术。在面向对象的...
    99+
    2023-06-30
  • Java中大数据对象加载的优化策略有哪些?
    Java是一种广泛使用的编程语言,它在处理大数据对象时非常有用。但是,如果不进行适当的优化,这些大数据对象的加载和处理可能会导致性能下降。因此,在本文中,我们将讨论Java中大数据对象加载的优化策略。 使用缓存 在处理大数据对象时,我们...
    99+
    2023-08-16
    大数据 对象 load
  • java创建对象方法有哪些
    java中创建对象方法有:1.使用new关键字创建;2.使用Class类创建;3.使用构造函数创建;4.使用反序列化创建;java中创建对象方法有以下几种使用new关键字创建public class Test {public static ...
    99+
    2024-04-02
  • Java对象的知识点有哪些
    这篇文章主要讲解了“Java对象的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java对象的知识点有哪些”吧!问题的复杂性直接取决于抽象的类型和质量,同一个问题,如果抽象的方法...
    99+
    2023-06-03
  • Java接口的分布式对象有多强大?
    Java的分布式对象技术是实现分布式计算的重要手段之一,而Java接口则是实现分布式对象的重要基础。Java接口的分布式对象可以在不同的机器上运行,并且能够实现跨网络的远程调用,具有很强的灵活性和扩展性。本文将详细介绍Java接口的分布式...
    99+
    2023-09-19
    接口 分布式 对象
  • Java面向对象有三大特征是什么
    这篇文章主要讲解了“Java面向对象有三大特征是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java面向对象有三大特征是什么”吧!面向对象有三大特征:封装性、继承性、多态性。l&nbs...
    99+
    2023-06-02
  • Java创建对象的方法有哪些
    本篇内容介绍了“Java创建对象的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1 简介Java...
    99+
    2024-04-02
  • 在java中jsp有哪些内置对象
    java中jsp的内置对象:request:封装客户端的请求,其中包含来自GET或POST请求的参数;response:封装服务器对客户端的响应;pageContext:通过该对象可以获取其他对象;session:封装用户会话的对象;app...
    99+
    2024-04-02
  • java中对象创建有哪些过程
    本篇文章给大家分享的是有关java中对象创建有哪些过程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java的优点是什么1. 简单,只需理解基本的概念,就可以编写适合于各种情况...
    99+
    2023-06-14
  • java克隆对象的方法有哪些
    在Java中,克隆对象的方法有以下几种:1. 实现Cloneable接口并重写clone()方法:该方法是Object类中的方法,需...
    99+
    2023-09-25
    java
  • java创建对象的方式有哪些
    在Java中创建对象的方式有以下几种:1. 使用 `new` 关键字:通过使用 `new` 关键字,可以实例化一个类,并在内存中分配...
    99+
    2023-09-13
    java
  • Javascript有哪些对象
    小编给大家分享一下Javascript有哪些对象,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JavaScript 对象Java...
    99+
    2024-04-02
  • ADO.NET对象有哪些
    本篇内容主要讲解“ADO.NET对象有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ADO.NET对象有哪些”吧!ADO.NET是Microsoft数据库访问的一种新技术,它支持连接式访问和...
    99+
    2023-06-17
  • Guestbook对象有哪些
    本篇内容介绍了“Guestbook对象有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!留言对象。类名:com.jspxcms.ext.d...
    99+
    2023-06-26
  • jquery有哪些对象
    jQuery是一种流行的JavaScript库,它简化了HTML文档遍历、事件处理、动画效果和AJAX等常见的网页开发任务。在使用jQuery时,我们需要熟悉一些重要的对象和功能。本文将介绍jQuery的主要对象,帮助大家更好地使用和理解j...
    99+
    2023-05-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作