栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Tomcat中部署Web程序的几种方式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Tomcat中部署Web程序的几种方式

在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。

在下文中$CATALINA_HOME指的是Tomcat根目录。

一、静态部署

静态部署:指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。
以下3中方式都可以部署:

  1. 拷贝你的WebProject项目拷贝到 $CATALINA_HOMEwebapps下,然后启动服务器就可以了。
    这种方式比较简单,但是web应用程序必须在webapps目录下。
    访问地址如:http://localhost:8080/项目名/

  2. 这种方式可以不必将WebProject目录拷贝到webapps下,直接在任意位置部署,如部署在F盘。
    方法如下,更改$CATALINA_HOMEconfserver.xml文件,在标签内添加标签,内容如下:


docbase 是项目路径(可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps)。
path 是项目名称(属性的值是访问时的根地址,访问地址如:http://localhost:8080/WebProject/)。
reloadable=“false” 表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为 true,方便开发,在发布阶段应该设置为 false,提高应用程序的访问速度。

  1. 这种方式和第二种方式差不多,但是不是在server.xml文件中添加context标签,
    而是在 $CATALINA_HOMEconfCatalinalocalhost 中添加一个 xml 文件,
    这种方式可以不必将WebProject目录拷贝到webapps下,直接在任意位置部署。
    如果你的项目成名是:WebProject,那你的文件命名为:WebProject.xml。
    当然也可以写成 ROOT.xml ,访问时不写项目名可以直接访问。
    文件里一句话:

大家可能发现和第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。访问地址如:http://localhost:8080/WebProject/

docbase 是项目路径(可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps)。
path 是项目名称(属性的值是访问时的根地址,访问地址如:http://localhost:8080/Pet/)。
reloadable=“false” 表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为 true,方便开发,在发布阶段应该设置为 false,提高应用程序的访问速度。

二、动态部署

动态部署是指可以在服务器启动之后部署web应用程序,而不用重新启动服务器。动态部署要用到服务器提供的manager.war文件,如果在$CATALINA_HOMEwebapps下没有该文件,你必须去重新下载tomcat,否则不能完成以下的功能。要想使用该管理程序必须首先编辑$CATALINA_HOMEconftomcat-users.xml文件,
上文且说到tomcat-users.xml文件,这个文件中的内容是不依赖于任何一个web应用程序,所以在任何一个web程序中都可以使用,如果这些用户和角色只对你的应用起作用,那么你完全可以放置在你自己的应用程序中,比如WEB-INF中.下面我们将上次加入到tomcat-users.xml文件中的内容,加入到我们在WEB-INF下新建的myUser.xml文件中,注意此文件应该是以为根目录,如下所示:

 
   
   
   
   
   
   
   
   
   
   
   
 

这个文件已经建立好了,那么怎么告诉Tomcat加载这个文件呢?我们通过下面这一种方式,在你的Web应用程序中的meta-INF文件夹中加入Context.xml 文件,这样当此应用程序部署的时候,就会加载该文件的内容,内容如下:

 
   
 

Realm标签中className属性定义了使用MemoryRealm类从pathname处加载xml文件。还要注意这里的pathname它是以相对Tomcat根目录的,所以上文件路径应该从webapps开始。最后重新启动服务器再访问你程序,应该能够看到和上次相同的效果。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/351492.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号