您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > JAVA

使用Maven和Tomcat创建并部署Java应用

时间:2023-12-11 13:51:58  来源:微信公众号  作者:Java学研大本营

引言

本文分享使用Maven和Tomcat创建、构建和部署简单的JAVA Web应用程序的过程。Maven是个强大的构建自动化工具,可以帮助管理项目依赖关系并自动化构建任务,而Tomcat是被广泛使用的Web服务器和Java Web应用程序的Servlet容器。

准备工作

在开始之前,请先确保系统上已安装了以下工具:

  • JDK(Java开发工具包)- 版本8或更高
  • Apache Maven- 版本3.6或更高
  • Apache Tomcat- 版本9或更高

第1步:创建一个Maven项目

首先,使用以下命令创建一个新的Maven项目:

mvn archetype:generate -DgroupId=com.example -DartifactId=my-webApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

这个命令会生成一个具有以下结构的新Maven项目:

my-webapp
├── src
│   └── mAIn
│       ├── resources
│       └── webapp
│           ├── WEB-INF
│           │   └── web.xml
│           └── index.jsp
└── pom.xml

第2步:配置项目

现在,打开项目根目录下的pom.xml文件,并添加以下插件和依赖关系:

<project>
  ...
  <packaging>war</packaging>
  ...
  <dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>${project.artifactId}</finalName>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.3.1</version>
      </plugin>
    </plugins>
  </build>
</project>

第3步:创建一个简单的Servlet

开始创建一个简单的Servlet来处理HTTP请求。在src/main/java/com/example/目录下创建一个新目录,并添加名为HelloServlet.java的新文件,内容如下:

package com.example;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "HelloServlet", urlPatterns = {"/hello"})
public class HelloServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        response.getWriter().println("<h1>Hello, World!</h1>");
    }
}

第4步:构建Web应用程序

要构建Web应用程序,请在项目的根目录中运行以下命令:

mvn clean package

这个命令将编译Java代码,把应用程序打包为WAR文件(my-webapp.war),并将其放置在目标目录中。

第5步:部署Web应用程序

现在有了WAR文件,可以将其部署到Tomcat服务器。请按照以下步骤操作:

  • 将my-webapp.war文件从目标目录复制到Tomcat安装目录中的webapps目录:
cp target/my-webapp.war /path/to/tomcat/webapps/
  • 如果Tomcat尚未运行,请启动Tomcat服务器。可以在Tomcat安装目录的bin目录中运行startup.sh(linux/macOS)或startup.bat(windows)脚本来启动它。
  • 打开浏览器并导航至以下URL:http://localhost:8080/my-webapp/hello

应该会看到一个显示文本“Hello, World!”的网页。

总结

本文演示了如何使用Maven和Tomcat创建、构建和部署简单的Java Web应用程序。通过按照这些步骤,开发人员可以快速设置一个开发环境,用于创建更复杂的Java Web应用程序。Maven和Tomcat的组合提供了一种强大且高效的方式来管理依赖关系、自动化构建任务并提供Java Web应用程序服务。



Tags:Java应用   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
在Java应用程序中释放峰值性能:配置文件引导优化(PGO)概述
译者 | 李睿审校 | 重楼在Java开发领域,优化应用程序的性能是开发人员的持续追求。配置文件引导优化(Profile-Guided Optimization,PGO)是一种功能强大的技术,能够显著地提高Ja...【详细内容】
2024-03-18  Search: Java应用  点击:(24)  评论:(0)  加入收藏
使用Maven和Tomcat创建并部署Java应用
引言本文分享使用Maven和Tomcat创建、构建和部署简单的Java Web应用程序的过程。Maven是个强大的构建自动化工具,可以帮助管理项目依赖关系并自动化构建任务,而Tomcat是被广泛...【详细内容】
2023-12-11  Search: Java应用  点击:(171)  评论:(0)  加入收藏
深度解析阿里Arthas:从入门到精通,掌握Java应用问题排查利器
本篇带给大家Arthas的一些常用命令,可以帮助开发者快速定位和解决Java应用中的问题。当然,Arthas还有许多其他的功能和命令,这里只是介绍了一部分。Arthas是阿里开源的一款Java...【详细内容】
2023-03-03  Search: Java应用  点击:(249)  评论:(0)  加入收藏
JAVA应用生产问题排查步骤
JAVA应用生产问题排查步骤学会这篇文章里面的命令并熟练使用,出去面试就可以说自己有5年工作经验并且精通JVM了。本篇文章中介绍的命令绝对是JAVA程序员平时工作中经常使用的...【详细内容】
2021-08-25  Search: Java应用  点击:(334)  评论:(0)  加入收藏
Java应用监控的原理
监控的基本流程基本流程采集数据的方式 有代码侵入(比如:Cat); 无代码侵入(比如:Skywalking、Pinpoint等);怎么做到无代码侵入?JVMTI(Java Virtual Machine Tool Interface)是一套由 J...【详细内容】
2021-02-25  Search: Java应用  点击:(619)  评论:(0)  加入收藏
Linux快速找出Java应用占用CPU最高的线程
1.使用top -c命令查询,(由于在这个服务器上部署了多个Tomcat应用),先找到占用占用最高的cpu进程,如下图:top -c命令截图2.查找占用CPU比较多的进程的线程信息,top -H -p 32555,(注:由...【详细内容】
2021-01-07  Search: Java应用  点击:(585)  评论:(0)  加入收藏
有史以来25个最伟大的Java应用程序
从太空探索到基因组学,从反向编译器到机器人控制器,Java都是当今世界的核心编程语言。 ​Java编程故事始于1991年,当时Sun Microsystems试图将其在计算机工作站市场的领先地位...【详细内容】
2020-06-30  Search: Java应用  点击:(385)  评论:(0)  加入收藏
Java应用系统的架构演变
系统架构演变1)单体应用架构​ web工程的所有模块(web层,service层,dao层)全部打包放到一个web容器中运行。 ​ 优点:​ (1)架构简单,开发成本低,周期短,适合小型项目。​ 缺点:​ (1)全部...【详细内容】
2019-12-18  Search: Java应用  点击:(412)  评论:(0)  加入收藏
Java应用在docker环境配置容器健康检查
在《极速体验docker容器健康》一文已体验了docker容器健康检查功能,今天就来给java应用的容器加入健康检查,使应用的状态随时都可以被监控和查看。实战环境信息 操作系统:macOS...【详细内容】
2019-10-22  Search: Java应用  点击:(606)  评论:(0)  加入收藏
▌简易百科推荐
Java 8 内存管理原理解析及内存故障排查实践
本文介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,以及各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时...【详细内容】
2024-03-20  vivo互联网技术    Tags:Java 8   点击:(14)  评论:(0)  加入收藏
如何编写高性能的Java代码
作者 | 波哥审校 | 重楼在当今软件开发领域,编写高性能的Java代码是至关重要的。Java作为一种流行的编程语言,拥有强大的生态系统和丰富的工具链,但是要写出性能优异的Java代码...【详细内容】
2024-03-20    51CTO  Tags:Java代码   点击:(19)  评论:(0)  加入收藏
在Java应用程序中释放峰值性能:配置文件引导优化(PGO)概述
译者 | 李睿审校 | 重楼在Java开发领域,优化应用程序的性能是开发人员的持续追求。配置文件引导优化(Profile-Guided Optimization,PGO)是一种功能强大的技术,能够显著地提高Ja...【详细内容】
2024-03-18    51CTO  Tags:Java   点击:(24)  评论:(0)  加入收藏
Java生产环境下性能监控与调优详解
堆是 JVM 内存中最大的一块内存空间,该内存被所有线程共享,几乎所有对象和数组都被分配到了堆内存中。堆被划分为新生代和老年代,新生代又被进一步划分为 Eden 和 Survivor 区,...【详细内容】
2024-02-04  大雷家吃饭    Tags:Java   点击:(55)  评论:(0)  加入收藏
在项目中如何避免和解决Java内存泄漏问题
在Java中,内存泄漏通常指的是程序中存在一些不再使用的对象或数据结构仍然保持对内存的引用,从而导致这些对象无法被垃圾回收器回收,最终导致内存占用不断增加,进而影响程序的性...【详细内容】
2024-02-01  编程技术汇  今日头条  Tags:Java   点击:(68)  评论:(0)  加入收藏
Java中的缓存技术及其使用场景
Java中的缓存技术是一种优化手段,用于提高应用程序的性能和响应速度。缓存技术通过将计算结果或者经常访问的数据存储在快速访问的存储介质中,以便下次需要时可以更快地获取。...【详细内容】
2024-01-30  编程技术汇    Tags:Java   点击:(72)  评论:(0)  加入收藏
JDK17 与 JDK11 特性差异浅谈
从 JDK11 到 JDK17 ,Java 的发展经历了一系列重要的里程碑。其中最重要的是 JDK17 的发布,这是一个长期支持(LTS)版本,它将获得长期的更新和支持,有助于保持程序的稳定性和可靠性...【详细内容】
2024-01-26  政采云技术  51CTO  Tags:JDK17   点击:(88)  评论:(0)  加入收藏
Java并发编程高阶技术
随着计算机硬件的发展,多核处理器的普及和内存容量的增加,利用多线程实现异步并发成为提升程序性能的重要途径。在Java中,多线程的使用能够更好地发挥硬件资源,提高程序的响应...【详细内容】
2024-01-19  大雷家吃饭    Tags:Java   点击:(105)  评论:(0)  加入收藏
这篇文章彻底让你了解Java与RPA
前段时间更新系统的时候,发现多了一个名为Power Automate的应用,打开了解后发现是一个自动化应用,根据其描述,可以自动执行所有日常任务,说的还是比较夸张,简单用了下,对于office、...【详细内容】
2024-01-17  Java技术指北  微信公众号  Tags:Java   点击:(95)  评论:(0)  加入收藏
Java 在 2023 年仍然流行的 25 个原因
译者 | 刘汪洋审校 | 重楼学习 Java 的过程中,我意识到在 90 年代末 OOP 正值鼎盛时期,Java 作为能够真正实现这些概念的语言显得尤为突出(尽管我此前学过 C++,但相比 Java 影响...【详细内容】
2024-01-10  刘汪洋  51CTO  Tags:Java   点击:(74)  评论:(0)  加入收藏
站内最新
站内热门
站内头条