当前位置:首页 > 技术分享 > 正文内容

Tomcat服务器部署迁移JavaWeb项目War包基本步骤

admin2年前 (2022-07-08)技术分享1550

1. 基本常识:

 

1.1 War

War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。(项目已经开放结束,基本很少改动)

当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行产品发布,都需要将开发人员的源码打包成War进行发布。

War包可以放在Tomcat下的webapps或者word目录下,随着tomcat服务器的启动,它可以自动被解压

  Jar文件(扩展名为. Jar,Java Application Archive)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等

  War文件(扩展名为.War,Web Application Archive)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。

  Ear文件(扩展名为.Ear,Enterprise Application Archive)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar文件、资源、类和Web应用程序的集合。


JARWAREAR
英文Java Archive fileWeb Archive fileEnterprise Archive file
包含内容class、properties文件,是文件封装的最小单元;包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等Servlet、JSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等除了包含JAR、WAR以外,还包括EJB组件
部署文件application-client.xmlweb.xmlapplication.xml
容器应用服务器(application servers)小型服务程序容器(servlet containers)EJB容器(EJB containers)
级别

1.2 Tomcat服务器

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

 

2. 配置Java运行环境

2.1 下载并安装JDK

从官网上下载最新的JDK:http://java.sun.com/javase/downloads/index.jsp ,下载后安装,选择想把JDK安装到的目录。JRE是包含在JDK中的,所以不需要再另外安装JRE了。

右击“计算机”,点击“属性”,点击弹出窗口中左侧的“高级系统设置”,在弹出的选项卡中选择“高级->环境变量”。

 记得配置环境变量:

  1. 系统变量→新建 JAVA_HOME 变量 。变量值填写jdk的安装目录(本人是 E:Javajdk1.7.0)

  2.   

    系统变量→寻找 Path 变量→编辑

    在变量值最后输入 %JAVA_HOME%in;%JAVA_HOME%jrein;

    (注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)

2.2 验证是否JDK环境变量设置成功

点击开始并输入CMD,在命令行分别输入:java; javac; java –version.

如果分别显示如下信息,说明你的Java环境变量已经配置成功。 

 

3. 部署Tomcat服务器 

3.1 下载Tomcat到本地硬盘

从官网上下载Tomcat服务器。官网上下载的文件都是绿色免安装的。

下载地址为:http://tomcat.apache.org/download-70.cgi

下载后解压缩,如E:apache-tomcat-7.0.26。

 

3.2 设置Tomcat环境变量

依然是点开电脑的环境变量对话框。

新建一个环境变量:

变量名:TOMCAT_HOME

变量值:你的TOMCAT解压后的目录,如E:apache-tomcat-7.0.26。

 

3.3 验证Tomcat环境变量的配置是否成功

运行Tomcat解压目录下的 bin/startup.bat,启动Tomcat服务器。在任何一款浏览器的地址栏中输入http://localhost:8080 ,如果界面显示Apache Tomcat界面,则说明Tomcat的环境变量配置成功。

 

4. 部署Web项目的War包到Tomcat服务器

 4.1 项目在本地调试通过,使用eclipse或idea工具将项目包成war包(使用工具将项目打包成war包,或是命令行教程,网上很多或参考小编其他博客)

假定有一个Web应用:D:/projectName【类似如下项目结构,不一定所有的结构相同】

projectName/WEB-INF/……
projectName/files/……
projectName/image/……
projectName/src/……
projectName/index.jsp

在命令行窗口下执行如下命令:

D:/>cd projectName

D:/projectName/>jar   cvf   projectName.war   */  .

解释:jar   cvf   [A=》war包名].war   [B=》资源文件及文件夹]   [C=》将要生成war包的目标文件夹]

*/”(B=》)代表当前目录(C:/myHome)下的所有文件及文件夹。

.” (C=》)表明将要在当前目录中生成war包。 

操作完成后,找到D:/projectName下新生成的projectName.war,将其拷入TOMCAT_HOME/webapps/下。然后启动Tomcat即可。

 

4.2 项目在本地调试通过后,war包已经放入到Tomcat的webapp目录下,配置Web项目的虚拟目录

将projectName.war包,复制到Tomcat的webapp下【或者是将war包解压后放在webapp】,配置Web项目的虚拟目录

在访问之前,需要修改tomcat服务器的配置文件,打开:

tomcat解压目录confserver.xml。将运行该web项目时,需要配置的虚拟目录增加到该xml文件中。

找到Service元素<Service>,在元素末找<Host>元素,在<Host>元素末尾增加:

<Context path="/projectName" docBase="C:Program Files/apache-tomcat-9.0.0.M22/webapps/projectName" reloadable="true"/>

在浏览器中输入:http://localhost:8080/projectName就可以访问项目

【备注】

加重标黑的都是重点关注的

contex:指上下文,实际上就是一个web项目;
path:是虚拟目录,访问的时候用localhost:8080/projectName/*.jsp访问网页,projectName前面要加/;
docBase:是网页实际存放位置的根目录,映射为path虚拟目录;
reloadable="true":表示你修改了jsp文件后不需要重启就可以实现显示的同步。

 


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:https://blog.bitefu.net/post/310.html

分享给朋友:

相关文章

微软版Ghost Win10:FFU映像备份和还原

微软版Ghost Win10:FFU映像备份和还原

在日常的维护中,系统的备份和还原是大家经常需要操作的事情。虽然Windows 10已经提供很多的工具,如系统还原、WIM备份/还原,VHD备份等。不过这些工具大多是基于文件的备份/还原。我们以前经常的使用的Ghost则是基于扇区的备份/还原...

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

家里面买了斐讯盒子T1,必不可少的就是刷机,刷机一直爽,一直刷机一直爽,这样的快乐一般人体会不到。原来斐讯盒子N1,T1,还有斐讯K2P路由器也变成了性价比超高的东东,而且众多大神也带来了超多可玩性非常高的固件和破解。楼主今天扒到了相关超高...

php Aes 加密模式ECB填充pkcs5padding base64

最近做支付项目用到了aes加密不过试了好多办法总是和官方给出的结果不一样,找了很久终于找到了测试结果同 http://tool.chacuo.net/cryptaes/ <?php /**  * [Aes&nb...

PHP和Redis实现在高并发下的抢购及秒杀功能

抢购、秒杀是平常很常见的场景,面试的时候面试官也经常会问到,比如问你淘宝中的抢购秒杀是怎么实现的等等。抢购、秒杀实现很简单,但是有些问题需要解决,主要针对两个问题:一、高并发对数据库产生的压力二、竞争状态下如何解决库存的正确减少("...

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

下面的密钥,是微软官方提供的,仅能用于Windows10系统版本的升级,比如从家庭版升级为专业版、专业版升级为企业版等。升级密钥不能用于激活系统,激活需要KMS或者数字权利,由于涉及到版权问题,在此不宜分享,请大家自行查找激活相关的内容。准...

Nginx服务崩溃自动重启脚本(监控进程服务并自动重启进程服务)脚本

有一台服务器运行着Ngin最近突然有一次崩溃,导致使用方当天无法访问网页端,然后我不得不登录服务器,检查各项服务,发现nginx崩溃了,于是重启Nginx,问题解决。后来为了防止Nginx再发生这种情况给运维带来的运维成本,于是写了一个脚本...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。