加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 每个war文件中没有JVM实例?

发布时间:2020-12-15 08:44:15 所属栏目:Java 来源:网络整理
导读:根据我的理解,每个war文件将有一个jvm实例和一个类加载器层次结构.对?两个问题: – 问题1: – 如果我在war文件中打包我的servlet类和业务类(打包在jar文件中).这里war文件包含jar文件和servlet类.如果我尝试访问业务类中的servlet中声明的静态全局变量,我
根据我的理解,每个war文件将有一个jvm实例和一个类加载器层次结构.对?两个问题: –

问题1: – 如果我在war文件中打包我的servlet类和业务类(打包在jar文件中).这里war文件包含jar文件和servlet类.如果我尝试访问业务类中的servlet中声明的静态全局变量,我可以做到正确吗?因为这里只有一个jvm实例和类加载器层次结构

问题2: – 如上所述,如果我将我的servlet类和业务类打包在两个不同的war文件中,这两个war文件都打包在同一个ear文件下,那么如果我尝试访问业务类中servlet中声明的静态全局变量,我就无法做到.Is它正确吗?因为这里将是每个war文件的两个jvm实例和类加载器层次结构

解决方法

当然,整个应用程序服务器在一个JVM中运行(至少对我所知的所有应用程序服务器都是如此).没有必要启动单独的JVM来为每个Web应用程序提供一个专用的类加载器,它可以看到不同(版本的)类.

So war file here contains jar file and servlet class. If i try access static global variable declared in servlet in business class,i can do it Correct?

您可能可以,但不应该,因为如果业务层依赖于表示层中特定类的存在,它会违反应用程序的分层.

if i package my servlet class and business class in two different war files both packaged under same ear file then If i try access static global variable declared in servlet in business class,i can not do it .Is it Correct?

再次,这是糟糕的设计.此外(据我所知)规范并未强制要求所有应用程序服务器遵守的特定行为,因此这可能取决于您选择的应用程序服务器及其配置.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读