war和war exploded的区别

在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况:

是选择war还是war exploded 这里首先看一下他们两个的区别:

war模式:将WEB工程以包的形式上传到服务器 ;

war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器;

(1)war模式这种可以称之为是发布模式,看名字也知道,这是先打成war包,再发布;

(2)war exploded模式是直接把文件夹、jsp页面 、classes等等移到Tomcat 部署文件夹里面,进行加载部署。因此这种方式支持热部署,一般在开发的时候也是用这种方式。

(3)在平时开发的时候,使用热部署的话,应该对Tomcat进行相应的设置,这样的话修改的jsp界面什么的东西才可以及时的显示出来。

修改箭头指向的位置,这样的话就可以实现热部署。

使用war模式开发的时候遇到的坑

一、项目代码的位置如下:

上述项目为SSM项目。

二、部署使用的Tomcat位置:

三、用于获取上下文环境绝对路径的代码:

四、两种方式的实验过程和结果:

(1)在使用war模式开发的时候,通过下边这段代码获取项目的相对路径:

war模式始终是获取到的路径如下:

其中C:\Software\apache-tomcat-8.0.32 是我Tomcat的所在位置。

可以看出通过war模式是最终打包部署到Tomcat的位置。

(2)然后再看war exploded模式,同样进行设置,运行同一段代码,运行结果如下:

可以看出最终得到的是我这个项目的位置,其实就是这个项目target的位置。

五、总结

根据上述(1)(2)的实验结果可以看到这两种方式得部署方式是不一样的,因此在获取项目的相对路径的时候得到的结果是不一样的。

170223、Tomcat部署时war和war exploded区别以及平时踩得坑的更多相关文章

  1. IDEA Tomcat部署时war和war exploded区别以及平时踩得坑

    war和war exploded的区别 在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况: 是选择war还是war exploded 这里首先看一下他们两个的区别: war模式 ...

  2. Tomcat部署时war和war exploded区别以及平时踩得坑

    war和war exploded的区别 在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况: 是选择war还是war exploded 这里首先看一下他们两个的区别: war模式 ...

  3. Tomcat部署时war和war exploded的区别

    转自徐刘根的Tomcat部署时war和war exploded区别以及平时踩得坑 一.war和war exploded的区别 在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况: ...

  4. Tomcat部署时war和war exploded区别以及如何实现热部署

    war和war exploded的区别       使用IDEA配置Tomcat服务的时候,在 Select Artifacts to Deploy 选项中相同项目名有war和 war explode ...

  5. Tomcat部署时war和war exploded区别及验证

    war和war exploded的区别 在使用IDEA开发项目的时候,部署Tomcat的时候通常会出现下边的情况: 是选择war还是war exploded 这里首先看一下他们两个的区别: war模式 ...

  6. IDEA中Tomcat部署时war和war exploded区别

    原理说明 war模式:将WEB工程以包的形式上传到服务器 :war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器: 含义解释 war模式这种可以称之为是发布模式,看名字也知道, ...

  7. Tomcat部署时war和war exploded区别以及打包后路径问题

    感谢原文作者:keven_deng 原文链接:https://blog.csdn.net/keven_deng/article/details/104830664 war和war exploded的区 ...

  8. tomcat部署项目后,war包是否可刪?war包存在必要性!

    在tomcat中webapps目錄上傳war包后,  对war解压时候. war不能在tomcat运行时删除,否则会删除自动解压的工程. 你可以停止tomcat后删除war. 当你重新部署的时候,如果 ...

  9. 如何制定tomcat部署时自己定义的docBase路径

    装了tomcat后发现tomcat安装在系统跟路径地下,每次部署的时候挺麻烦的,于是想指定一个自己定义的应用部署的路径: 以下是如何指定,相关文档请查看https://tomcat.apache.or ...

随机推荐

  1. python selenium --鼠标事件

    转自:http://www.cnblogs.com/fnng/p/3288444.html 本节重点: ActionChains 类 context_click()  右击 double_click( ...

  2. Hive SQL 常见问题(转载)

    http://www.aboutyun.com/thread-14942-1-1.html 问题导读 1.Hive查询语句和SQL查询语句区别与联系. 2.distribute by.group by ...

  3. Lintcode---线段树的构造

    线段树是一棵二叉树,他的每个节点包含了两个额外的属性start和end用于表示该节点所代表的区间.start和end都是整数,并按照如下的方式赋值: 根节点的 start 和 end 由 build  ...

  4. Java并发编程(二):JAVA内存模型与同步规则

    一.Java内存模型(JMM) 它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式.一个线程如何和何时能看到其他线程共享变量的值,以及在 ...

  5. 多线程-ConcurrentHashMap(JDK1.8)

    前言 HashMap非线程安全的,HashTable是线程安全的,所有涉及到多线程操作的都加上了synchronized关键字来锁住整个table,这就意味着所有的线程都在竞争一把锁,在多线程的环境下 ...

  6. Sublime Text快捷键去除空白行 - 转载请保留原文链接:https://www.noniu.com/qianduan/sublime-text-kongbaihang.html

    如果使用notepad++或者Dreamweaver的朋友,应该知道有个快捷键或者功能按钮,可以实现删除文档空白行的功能.虽然空白行不会影响程序运行,但是会占一定的空间,对于有处女座特质的程序员来说, ...

  7. 绝不能错过的10款最新OpenStack网络运维 & 监控工具

    摘要 今天我们要推荐给大家的是关于奥斯汀OpenStack Summit的OpenStack网络方面功能与工具相关的技术演讲. 希望可以帮助国内的开发者.架构师和用户更好地了解OpenStack在SD ...

  8. mysql获取插入的id主键

    long _retId = -1; Connection con = null; try { con = queryRunner.getDataSource().getConnection(); qu ...

  9. springBoot文档地址

    文档: https://www.gitbook.com/book/qbgbook/spring-boot-reference-guide-zh/details 配置: http://docs.spri ...

  10. k8s入门

    一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机:万级容器:相如无亿,K8s有亿 ...