JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

embedded/2024/12/22 18:51:00/

前言

我们想要部署一个javaWeb项目到tomcat上,需要了解一些概念

 什么是tomcat

        Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(JSTL)、Java WebSocket 技术以及 Java API for WebSocket 的容器。简而言之,Tomcat 是一个 Web 应用服务器(也称为 Servlet 容器),它主要用于在服务器上运行 Java 编写的 Web 应用程序。

        Tomcat 提供了对 Servlet 和 JSP 的支持,使得开发者能够编写出功能强大的交互式 Web 应用程序。Servlet 是一种运行在服务器上的 Java 应用程序,它主要用于处理客户端的请求并返回响应;而 JSP 是一种用于创建动态网页内容的技术,它允许将 Java 代码嵌入到 HTML 页面中

        Tomcat 通常被部署在服务器上,用于运行 Web 应用程序。开发者可以在本地计算机上安装 Tomcat 以进行开发和测试,然后将应用程序部署到生产环境中的 Tomcat 服务器上,以提供给最终用户使用。

 什么是maven项目?

maven是管理和构建java项目的工具,JavaWeb项目时在maven项目的基础上进行创建的。

maven中最重要的就是pom.xml配置文件,通过一小段描述来管理和构建java项目

 创建一个Javaweb项目

使用idea继承开发环境创建第一个JavaWeb程序( 前提:已经在idea配置了maven)

打开idea-->点击New Project 

项目结构如下:

 此时,已经创建了一个基本的JavaWeb项目,只不过此时不包含任何东西,如何创建Servlet等操作,这里不在赘述,直接演示如何打包JavaWeb项目,在Tomcat服务器运行

 打包JavaWeb项目

JavaWeb项目打包成war包

        在Maven项目中,将项目打包成WAR(Web Application Archive)包是一个常见的需求,特别是在开发Web应用程序时。WAR包是一个包含了所有Servlet类文件、JSP文件、Java类库、资源文件(如图片和HTML)以及Web页面所需的META-INF/和WEB-INF/目录的JAR文件。Maven通过其maven-war-plugin插件来支持WAR包的打包。

以下是将Maven项目打包成WAR包的基本步骤:

 1. 检查pom.xml文件

        首先,确保你的pom.xml文件中包含了正确的打包类型。对于Web应用程序,你通常不需要显式设置<packaging>元素,因为Maven默认将pom.xml中带有<webappDirectory>或包含Web资源目录(如src/main/webapp)的项目视为WAR包项目。但如果你需要明确指定,可以添加如下配置:

<packaging>war</packaging>

2. 配置maven-war-plugin

        尽管Maven的默认配置通常足以生成WAR包,但有时你可能需要自定义WAR包的某些方面。这时,你可以在pom.xml中配置maven-war-plugin。(如果不配置war插件的版本,在tomcat无法运行)以下是一个简单的配置示例:

<build>  <plugins>  <plugin>  <groupId>org.apache.maven.plugins</groupId>  <artifactId>maven-war-plugin</artifactId>  <version>3.3.2</version> <!-- 请使用最新的稳定版本 -->  <configuration>  <!-- 自定义WAR包的名称 -->  <warName>web/warName>  <!-- 其他配置... -->  </configuration>  </plugin>  </plugins>  
</build>

执行完以上操作后,记得重新加载POM.XML文件更新

 3. 打包maven项目

找到Maven的生命周期插件,双击package进行打包

 4. 启动tomcat

在本地资源管理器打开项目,找到我们打包后的war包 ,把它放在tomcat的webapps目录下:

 双击tomcatbin目录下的startup.bat命令,启动本地的tomcat服务器,如下所示:

如果出现中文乱码,是字符编码集出现不匹配导致,不会影响项目的运行

tomcat启动完成后,会自动解压我们的war包

 

 此时直接在浏览器测试:

1.查看tomcat是否启动成功:

访问localhost:8080出现如下页面,tomcat启动成功

2.查看JavaWeb项目是否启动成功: 

此时需要带上我们定义的项目名路径:这里我设置成了web(可以任意设置,不要出现非法字符)

因为没有写任何内容,会直接访问默认首页:(即index.jsp中的HTML页面)

访问成功!(这表示JavaWeb项目部署成功!)

 总结

 本博客主要是为了介绍如何将一个JavaWeb项目打包成war包,并且部署到tomcat服务器上,并没有书写Servlet和JSP等内容,目的是为了快速了解tomcat部署Java项目的全部流程。


http://www.ppmy.cn/embedded/111446.html

相关文章

Docker概述

Docker能干什么&#xff1f; 虚拟机技术: 资源占用十分多冗余步骤多启动很慢 容器化技术: 不是模拟的一个完整的操作系统&#xff0c;每一个项目可以和自己的运行环境打包形成一个镜像&#xff0c;每个容器之间互相隔离&#xff0c;互不影响。 比较docker和虚拟机的不同 …

数据格式:什么是JSON和XML

JSON和XML都是数据交换的一种格式&#xff0c;用于在不同的系统和应用程序之间传输和存储数据。本文将解释JSON和XML的基础内容&#xff0c;并探讨两者的不同。 一 什么是JSON&#xff1f; 1. JSON&#xff08;JavaScript Object Notation&#xff09;即JavaScript对象标记法…

【Oracle】TIMESTAMP类型时间计算时间差

在 Oracle 中&#xff0c;TIMESTAMP 和 TIMESTAMP(6) 的主要区别在于时间精度。TIMESTAMP 默认不包含微秒&#xff0c;而 TIMESTAMP(6) 支持微秒精度&#xff08;6 位小数秒&#xff09;。详细说明两者的区别、相互转换&#xff0c;并深入讨论如何计算两个 TIMESTAMP(6) 之间的…

文件批量添加水印和密码合并单元格完整版

这段代码是一个 Java 方法&#xff0c;用于向文件添加水印和密码。您解释一下&#xff1a; 首先&#xff0c;它接受一个 fileAddress 参数&#xff0c;表示文件的地址。 然后&#xff0c;它创建了一个线程安全的列表 fileDatas&#xff0c;用于存储文件数据。 接下来&#xff…

IT 项目管理与需求分析最佳实践

项目管理无处不在&#xff0c;它不仅仅是一个岗位&#xff0c;更是一套科学的工作方法&#xff0c;能够很好地指导我 们的工作与生活。但很多从业者缺少项目管理意识与技巧&#xff0c;为自己的工作增添了许多额外的阻 碍&#xff0c;不仅项目推进不及预期&#xff0c;也让个…

基于微信的热门景点推荐小程序的设计与实现(论文+源码)_kaic

摘 要 近些年来互联网迅速发展人们生活水平也稳步提升&#xff0c;人们也越来越热衷于旅游来提高生活品质。互联网的应用与发展也使得人们获取旅游信息的方法也更加丰富&#xff0c;以前的景点推荐系统现在已经不足以满足用户的要求了&#xff0c;也不能满足不同用户自身的个…

Excel--不规则隔行填充底纹颜色

巧用条件格式快速给小计和总计行填充不同颜色。 先选择整个表格&#xff08;选中第一行&#xff0c;按住Shift双击边框即可选中整个表格&#xff09; 新建条件格式-使用公式确定要设置格式的单元格&#xff0c;输入$B3"小计&#xff1a;"&#xff0c;设置格式&…

2024网安周今日开幕,亚信安全亮相30城

2024年国家网络安全宣传周今天在广州拉开帷幕。今年网安周继续以“网络安全为人民&#xff0c;网络安全靠人民”为主题。2024年国家网络安全宣传周涵盖了1场开幕式、1场高峰论坛、5个重要活动、15场分论坛/座谈会/闭门会、6个主题日活动和网络安全“六进”活动。亚信安全出席20…