`

Tomcat的静态部署和动态部署

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

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


一、静态部署


静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。

以下3种方式都可以部署:(以PetWeb项目为例说明,PetWeb目录假设是F:\PetWeb)



1.利用Tomcat自动部署


将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了,Tomcat启动时将自动加载应用。

访问地址如下:http://localhost:8080/PetWeb/

这种方式比较简单,但是web应用程序必须在webapps目录下。Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。



2.修改Server.xml文件部署

这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改$CATALINA_HOME\conf\server.xml文件,

找到以下内容:

Xml代码:

<Context  path ="/Pet"  reloadable ="false"  docBase ="F:/PetWeb"  workDir ="d:/Mywebapps/emp"  />
path:是访问时的根地址,表示访问的路径;如上述例子中,访问该应用程序地址如下:http://localhost:8080/Pet/

reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包。其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。

docbase:表示应用程序的路径,注意斜杠的方向“/”。 docBase可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。

workdir:表示缓存文件的放置地址



3.增加自定义web部署文件(推荐使用,不需要重启Tomcat )

这种方式和方法2差不多,但不是在Server.xml文件中添加Context标签,而是在$CATALINA_HOME\conf \Catalina\localhost中添加一个xml文件,如Pet.xml.在Tomcat安装目录conf\Catalina \localhost下,里面有Tomcat自带的三个应用,随意复制其中的一个XML文件,然后修改docbase指向你自己的应用程序,并把文件名改名,各参数参见方法2中的<Context>标签的参数,或者你也可以自己新建一个XML文件。(注意此文件名将作为Context中的path属性值,不管文件里的path属性值如何设置也是无效的 ),将以下内容复制过去,修改相应路径即可。

Xml代码:

<Context  path ="/Pet"  docBase ="F:/PetWeb"  
        debug ="0"  privileged ="true"  reloadable ="false"  >  
</Context>
访问地址如下:http://localhost:8080/Pet/  


注: Web应用以.war文件的形式部署




可以将JSP程序打包成一个war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个Web程序的所有内容进行压缩得到。

我们刚才是将PetWeb文件夹部署在了服务器中,我们知道可以将Web应用程序的内容打成.war 包,然后在部署在服务器上。打包请参考如下步骤:
    1、打开命令提示符(cmd)
    2、设置jdk环境变量 
    3、在命令提示符中进入项目文件夹F:\PetWeb后,键入如下命令:jar cvf Pet.war */ .   (注意最后有个“. ”)。这样在F:\PetWeb下应该有Pet.war文件。 (也可以打包到指定的地方,命令如下:jar cvf d:/Pet.war */ . )

部署Pet.war文件非常简单,将刚才xml文件中的docBase ="F:/PetWeb" 更改为docBase ="F:/Pet.war" 或者直接将其拷贝到webapps目录下就可以。然后重新启动服务器就可以将Pet.war部署为一个Web应用程序了。

如果你够细心的话你会发现,服务器将Pet.war文件解开,并且在webapps下面又生成了一个Pet文件夹,然后把Pet.war的内容拷贝到里面去了。我们可以通过以下方式取消自动解压缩,将xml配置文件中的unpackWAR 属性设置为"false" 即可。

分享到:
评论

相关推荐

    Tomcat热部署,让你轻松部署

    - **Tomcat自身的热部署**:Tomcat内置了基本的热部署功能,当检测到`WEB-INF/classes`或`WEB-INF/lib`目录下的更改时,会自动重新加载应用,但这个功能对于Java类的更新并不完全有效,通常只适用于静态资源和配置...

    详解tomcat部署静态html网站方法

    这个目录是Tomcat默认查找和部署应用的目录,Tomcat会自动识别并部署其中的应用。 接下来,需要对Tomcat的端口号进行配置,以便让外界可以通过浏览器访问到部署在Tomcat上的静态网站。这一设置可以在Tomcat的配置...

    tomcat 部署web项目

    下面我们将总结 Tomcat 中部署 Java Web 应用程序的两种方式:静态部署和动态部署。 静态部署 静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的 Web 应用程序才能访问。这种方式...

    Tomcat部署为每个应用分配不同端口

    部署过程包括安装应用到Tomcat服务器,通常分为静态部署和动态部署两种方式。 **静态部署**是指在Tomcat服务器启动之前,预先将Web应用程序安装到位。这通常通过将应用的目录或WAR文件放置在Tomcat的`$CATALINA_...

    tomcat热部署包

    总的来说,Tomcat热部署技术是Java Web开发中的一个重要优化手段,它通过减少重复的部署和重启操作,提升了开发效率,让开发者可以更加专注于代码的质量和功能实现。同时,通过使用合适的工具和插件,可以进一步简化...

    tomcat部署简单的html静态网页的方法

    - Tomcat是Java EE标准中的一部分,通常用来部署静态网页、动态网页应用和Web服务。 - 安装Tomcat前,必须先安装Java并配置好环境变量,因为Tomcat是用Java编写的。 2. 部署静态网页到Tomcat服务器的步骤 - 首先...

    tomcat部署springboot+vue.doc

    在本教程中,我们将深入探讨如何在Tomcat服务器上部署一个结合了SpringBoot后端和Vue.js前端的应用。 首先,为了在Tomcat上部署SpringBoot+Vue项目,我们需要进行以下步骤: 1. **修改POM文件**: 在SpringBoot...

    tomcat部署静态网站.docx

    虽然Tomcat主要设计用于处理动态内容,但它同样可以被用来部署静态HTML、CSS、JavaScript等文件,这对于小型网站或者只需要静态页面展示的项目来说是一个经济实惠的选择。 部署静态网站在Tomcat上的过程相当直接。...

    Tomcat 热部署

    【标题】:Tomcat 热部署 在Java Web开发中,Tomcat是一个广泛应用的开源应用服务器,主要用于运行Servlet和JSP应用。"热部署"是开发者非常关注的一个功能,它允许开发者在不中断应用程序运行的情况下更新或替换Web...

    tomcat下部署javaweb程序经验之谈

    本篇文章将深入探讨如何在Tomcat环境下部署Java Web程序,同时也会涉及到Oracle数据库和Java Development Kit(JDK)的安装配置。 首先,我们来了解Java Web项目的基础。Java Web项目通常由一系列的Java类、JSP页面...

    TOMCAT的手工部署.rar

    这通常是一个包含`WEB-INF`目录的结构,其中包含`web.xml`(Web应用的部署描述符)和其他必要的类、资源和静态文件。 2. 将你的Web应用文件夹复制或移动到`webapps`目录下。文件夹名即为你的Web应用上下文路径,如`...

    tomcat配置手册

    本手册主要介绍了 Tomcat 的部署方式,包括 Context descriptors、静态部署和动态部署三种方式。 Context descriptors Context descriptors 是 Tomcat 5.0 以上版本的新特性,它提供了一种灵活的部署方式。Context...

    mars-MP3项目整合(包括源码+tomcat部署文件)

    此外,“tomcat部署文件”表明项目是基于Java Web技术栈构建的,因为Tomcat是一个常用的Java应用服务器,通常用于部署和运行Servlet和JSP应用。 【描述解析】 描述部分与标题相同,进一步确认了这个压缩包包含了...

    Tomcat应用部署及nginx+tomcat实现动静分离项目

    动静分离即将动态请求和静态请求分开处理,动态请求由Tomcat处理,静态请求则由nginx直接返回,这样可以减少Tomcat的负载,加快页面加载速度。在配置nginx时,需要了解如何配置upstream模块来设置Tomcat集群,以及...

    提供一个《在Tomcat部署和发布Web应用》的入门教程

    本教程将向初学者详细介绍如何在Tomcat上部署和发布Web应用,以帮助你快速掌握这一关键技能。 首先,我们需要理解Web应用的基本结构。一个标准的Web应用通常包含以下几个部分:Web-INF目录,其中包含web.xml(部署...

    apache-tomcat-8.0.21部署配置说明.pdf

    根据提供的文件信息,本文将详细解释Apache Tomcat 8.0.21的部署与配置过程,主要包括删除webapps目录、调整Tomcat内存配置、修改context.xml和server.xml文件等关键步骤。 ### 一、Apache Tomcat 8.0.21简介 ...

Global site tag (gtag.js) - Google Analytics