文档章节

Tomcat 部署方式

helloOne
 helloOne
发布于 2016/03/17 11:40
字数 1052
阅读 44
收藏 8
点赞 1
评论 0

一、静态部署

1 、直接将web 项目文件件拷贝到webapps 目录中 
    
 Tomcat  Webapps 目录是 Tomcat 默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将 JSP 程序打包成一个 war 包放在目录下,服务器会自动解开这个 war 包,并在这个目录下生成一个同名的文件夹。一个 war 包就是有特性格式的 jar 包,它是将一个 web 程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的 IDE 环境,如 Eclipse 等。也可以用 cmd 命令: jar -cvf mywar.war  myweb 
     webapps
 这个默认的应用目录也是可以改变。打开 Tomcat  conf 目录下的 server.xml 文件,找到下面内容:

<Host name="localhost" appBase="webapps"

       unpackWARs="true" autoDeploy="true"

       xmlValidation="false" xmlNamespaceAware="false">

 appBase 修改即可。 
2 
、在server.xml 中指定 
    
  Tomcat 的配置文件中,一个 Web 应用就是一个特定的 Context ,可以通过在 server.xml 中新建 Context 里部署一个 JSP 应用程序。打开 server.xml 文件,在 Host 标签内建一个 Context ,内容如下。 

 tomcat 中的 conf 目录中,在 server.xml 中的, <host/> 节点中添加: 
<Context path ="/hello" docBase ="D:/ workspace/hello/WebRoot" debug ="0" privileged ="true">
</Context>

或者

<Context path ="/myapp" reloadable ="true" docBase ="D:/myapp" workDir ="D:/myapp/work"/>

或者

<Context path ="/sms4" docBase ="D:/workspace/sms4/WebRoot"/>


说明:

path 是虚拟路径;

docBase 是应用程序的物理路径;

workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;

 

debug 则是设定 debug level,  0 表示提供最少的信息, 9 表示提供最多的信息

privileged 设置为 true 的时候,才允许 Tomcat  Web 应用使用容器内的 Servlet

reloadable 如果为 true ,则 tomcat 会自动检测应用程序的 /WEB-INF/lib  /WEB-INF/classes 目录的变化,自动装载新的应用程序,可以在不重起 tomcat 的情况下改变应用程序,实现热部署

antiResourceLocking  antiJARLocking   热部署是需要配置的参数,默认 false 避免 更新了某个 webapp ,有时候 Tomcat 并不能把旧的 webapp 完全删除,通常会留下 WEB-INF/lib 下的某个 jar 包,必须关闭 Tomcat 才能删除,这就导致自动部署失败。设置为 true  Tomcat 在运行对应的 webapp 时,会把相应的源文件和 jar 文件复制到一个临时目录里。 
3 、创建一个Context 文件 
    conf 目录中,新建 Catalina  localhost 目录,在该目录中新建一个 xml 文件,名字不可以随意取,要和 path 后的那个名字一致,按照下边这个 path 的配置, xml 的名字应该就应该是 hello  hello.xml ),该 xml 文件的内容为:

<Context path="/hello" docBase="E:/workspace/hello/WebRoot" debug="0" privileged="true"></Context>

 

tomcat 自带例子如下:

<Context docBase="${catalina.home}/server/webapps/host-manager"

         privileged="true" antiResourceLocking="false" antiJARLocking="false">

</Context>

这个例子是 tomcat 自带的,编辑的内容实际上和第二种方式是一样的,其中这 xml 文件名字就是访问路径,这样可以隐藏应用的真实名字。

4 、注意:

     删除一个 Web 应用同时也要删除 webapps 下相应的文件夹和 server.xml 中相应的 Context ,还要将 Tomcat  conf/catalina/localhost 目录下相应的 xml 文件删除,否则 Tomcat 仍会去配置并加载。。。

二 动态部署

     登陆 tomcat 管理控制台: http://localhost:8080/ ,输入用户名和密码后便可管理应用并动态发布。

      Context Path(option): 中输入 /yourwebname ,这代表你的应用的访问地址。

     XML Configration file URL 中要指定一个 xml 文件,比如我们在 F:/ 下建立一个 hmcx.xml 文件,内容如下: <Context reloadable="false" /> 其中 docBase 不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在 WAR or Directory URL: 中键入 F:/hmcx 即可,然后点击 Deploy 按钮,上面就可以看到了 web 应用程序,名字就 Context Path(option): 中的名字。


    如果部署 .war 文件还有更加简单的方式,下面还有个 Select WAR file uploae 点击浏览选择 .war 文件,然后点击 Deploy 也可以。

本文转载自:http://my.oschina.net/u/214125/blog/36594

共有 人打赏支持
helloOne

helloOne

粉丝 1
博文 37
码字总数 4035
作品 0
深圳
QA/测试工程师

暂无相关文章

MySQL 数据库设计总结

规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎。 注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节...

OSC_cnhwTY ⋅ 今天 ⋅ 0

多线程(四)

线程池和Exector框架 什么是线程池? 降低资源的消耗 提高响应速度,任务:T1创建线程时间,T2任务执行时间,T3线程销毁时间,线程池没有或者减少T1和T3 提高线程的可管理性。 线程池要做些什...

这很耳东先生 ⋅ 今天 ⋅ 0

使用SpringMVC的@Validated注解验证

1、SpringMVC验证@Validated的使用 第一步:编写国际化消息资源文件 编写国际化消息资源ValidatedMessage.properties文件主要是用来显示错误的消息定制 [java] view plain copy edit.userna...

瑟青豆 ⋅ 今天 ⋅ 0

19.压缩工具gzip bzip2 xz

6月22日任务 6.1 压缩打包介绍 6.2 gzip压缩工具 6.3 bzip2压缩工具 6.4 xz压缩工具 6.1 压缩打包介绍: linux中常见的一些压缩文件 .zip .gz .bz2 .xz .tar .gz .tar .bz2 .tar.xz 建立一些文...

王鑫linux ⋅ 今天 ⋅ 0

6. Shell 函数 和 定向输出

Shell 常用函数 简洁:目前没怎么在Shell 脚本中使用过函数,哈哈,不过,以后可能会用。就像java8的函数式编程,以后获取会用吧,行吧,那咱们简单的看一下具体的使用 Shell函数格式 linux ...

AHUSKY ⋅ 今天 ⋅ 0

单片机软件定时器

之前写了一个软件定时器,发现不够优化,和友好,现在重写了 soft_timer.h #ifndef _SOFT_TIMER_H_#define _SOFT_TIMER_H_#include "sys.h"typedef void (*timer_callback_function)(vo...

猎人嘻嘻哈哈的 ⋅ 今天 ⋅ 0

好的资料搜说引擎

鸠摩搜书 简介:鸠摩搜书是一个电子书搜索引擎。它汇集了多个网盘和电子书平台的资源,真所谓大而全。而且它还支持筛选txt,pdf,mobi,epub、azw3格式文件。还显示来自不同网站的资源。对了,...

乔三爷 ⋅ 今天 ⋅ 0

Debian下安装PostgreSQL的表分区插件pg_pathman

先安装基础的编译环境 apt-get install build-essential libssl1.0-dev libkrb5-dev 将pg的bin目录加入环境变量,主要是要使用 pg_config export PATH=$PATH:/usr/lib/postgresql/10/bin 进......

玛雅牛 ⋅ 今天 ⋅ 0

inno安装

#define MyAppName "HoldChipEngin" #define MyAppVersion "1.0" #define MyAppPublisher "Hold Chip, Inc." #define MyAppURL "http://www.holdchip.com/" #define MyAppExeName "HoldChipE......

backtrackx ⋅ 今天 ⋅ 0

Linux(CentOS)下配置php运行环境及nginx解析php

【part1:搭建php环境】 1.选在自己需要安装的安装包版本,wget命令下载到服务器响应目录 http://php.net/releases/ 2.解压安装包 tar zxf php-x.x.x 3.cd到解压目录执行如下操作 cd ../php-...

硅谷课堂 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部