在【IntelliJ IDEA】中配置【Tomcat】【2023版】【中文】【图文详解】

news2024/10/7 20:35:01

        作为一款功能强大的集成开发环境(IDE),IntelliJ IDEA为Web服务器提供了卓越的支持,从而极大地简化了程序员在Web开发过程中的工作流程。学习Java Web开发实质上就是掌握如何创造动态Web资源,这些资源在完成开发后,必须部署在Web服务器上,才能对外提供服务并接受访问。在众多Web服务器中,Tomcat因其稳定性和易用性而备受青睐。本篇文章将为您详细解析Tomcat服务器的安装与使用方法,帮助您更好地掌握Java Web开发的核心技术。


        在此之前,让我先为您简要介绍Tomcat。Tomcat作为Apache组织Jakarta项目中的关键组件,得到了Sun公司(现已被Oracle收购)的官方推荐,作为运行Servlet和JSP的理想容器(引擎)。其源代码的完全公开性,使得开发者能够更深入地理解和定制其功能。Tomcat不仅涵盖了Web服务器的基本功能,还提供了数据库连接池等丰富的通用组件支持。

        Tomcat以其出色的稳定性、可靠性和高效性而著称,它能够与目前市场上主流的Web服务器(如Apache、IIS等)无缝协作,同时也可作为独立的Web服务器软件运行。因此,越来越多的软件企业和开发人员选择Tomcat作为他们运行Servlet和JSP的首选平台。

        随着版本的持续更新和迭代,Tomcat的功能不断得到完善与增强,从而满足不断变化的开发需求和市场趋势。


一、【Tomcat】 的 【Windows】 配置

        大家可以从官方网站(Apache Tomcat® - Welcome!)下载,为了便于Tomcat的启动和加载过程,建议下载ZIP压缩包(本文提供了Tomcat 8.5.16版本的压缩包,以及相关实例包,可以在此处 JavaWeb程序Tomcat及Servlet配置:实例与组件包-zip压缩包资源-CSDN文库 直接进行下载),通过解压的方式安装。注意:运行Tomcat之前需要安装Java JDK。

        1.我们将Tomcat压缩文件直接解压在D盘的Tomcat文件夹下,解压后会产生一个apache-tomcat-8.5.16文件夹。打开这个文件夹可以看到Tomcat的目录结构,如图所示。

        这一系列子目录各自承担着不同的功能,接下来将对它们进行简要的介绍:

        (1)bin:此目录用于存放Tomcat的可执行文件和脚本文件。其中,常见的文件扩展名为.bat,例如tomcat8.exe和startup.bat。这些文件是启动和管理Tomcat服务器所必需的。

        (2)conf:此目录存放着Tomcat的各种配置文件,如web.xml和server.xml。这些文件对于配置Tomcat服务器的行为至关重要,包括端口设置、安全策略等。

        (3)Lib:此目录用于存放Tomcat服务器和所有Web应用程序所需的JAR文件。JAR文件是Java应用程序的归档文件,包含了Java类、资源和其他依赖项。

        (4)logs:Tomcat的日志文件被存放在此目录中。这些日志记录了服务器的运行信息、错误消息和其他重要事件,对于故障排除和系统监控非常有帮助。

        (5)temp:此目录用于存放Tomcat运行时产生的临时文件。这些文件通常是短暂存在的,用于支持应用程序的运行。

        (6)webapps:这是Web应用程序的主要发布目录。开发者通常将开发完成的Web应用程序部署到这个目录下,使其能够被Tomcat服务器识别并提供给外界访问。

        (7)work:Tomcat的工作目录位于此。JSP(Java Server Pages)编译生成的Servlet源文件和字节码文件被放置在这个目录下。这些文件是JSP页面转换为可执行的Servlet时的中间产物。

        2.双击图中的startup.bat文件,便会启动Tomcat服务器。此时,可以在弹出的命令行看到一些启动信息。

        如果你电脑上弹出的黑窗口出现这样的信息,那么恭喜你——已经初步在Windows环境中已经配置好了tomcat。

       3. Tomcat 服务器启动后,在浏览器的地址栏中输入http://localhost:8080或者http://127.0.0.1:8080 (localhost和127.0.0.1都表示本地计算机)访问Tomcat服务器,如果浏览器中的显示界面如图所示,则说明Tomcat服务器彻底安装成功了。


        注意:如果您在按这个流程配置的过程中发现弹出的黑窗口一闪而过。先不要着急,一般都是有两个问题所导致的。

        (1)电脑中还未配置Java JDK。由于篇幅所限,在这儿就不阐述Java JDK的配置过程了,网络中都有大家自行检索哈。

        在这里提供一个检查是否配置好Java JDK的方法:点击Windows键+R键——然后在弹出的窗口中输入cmd——点击确定或者Enter键——在弹出的黑窗口中输入命令行:java -version,如果出现这样的界面说明Java JDK安装没问题。

        注意:建议复制粘贴命令行java -version,以防止输入错误,中间有空格。

        (2)Tomcat服务器未成功配置。一般来说,出现这样的情况是因为刚开始还没有配置相关的环境变量。  

        在这里同样提供一个检查配置Tomcat的方法:找到刚刚解压在D盘中的Tomcat,然后在apache-tomcat-8.5中,打开bin文件夹——在这个文件夹中点击鼠标右健,然后点击“在终端中打开”——在弹出的黑窗口中输入命令行:startup.bat。如果出现下面的错误信息,确实是由于未配置成功Tomcat服务器而导致的。

配置环境变量流程:

1)在电脑界面中找到该图标,然后鼠标右键。

2)点击属性。

3)然后点击高级系统设置。

4)点击环境变量。

5)单击系统变量区域的新建按钮。

6)在弹出的对话框中将变量名设置为 JAVA_HOME ,变量值设置为JDK的安装目录。填写完后,点击确定。

注意:变量名均为大写。

7)双击打开,系统变量中的Path。

8)在这里,你可以新建或者替换原来在Path环境变量中的JDK安装路径,将其修改为%JAVA_HOME%\bin。

注意:需要在JAVA_HOME两侧添加“%”

9)此时,再次重复之前的操作就会成功了。


二、【Tomcat】的【IntelliJ IDEA】配置

此时所有的准备工作已经完善,正式开始在IntelliJ IDEA里面配置Tomcat。

1.打开你的IntelliJ IDEA编译器。

2.在左上角文件中点击新建,点击项目。

3.只需要在新建项目中添加项目即可,无需点击下面的。

        名称:自行设置合理的名称;位置:选择你要创建项目的文件夹;其他如图所示,然后点击创建。

4.在2023版本中很显然什么都没有,显得很简陋,因此就需要将大部分内容自行配置。

        首先我们进行配置web项目模块,点击项目结构(Project Structure)。

5.点击Facet(Facets),然后点击右侧那个“+”

6.点击出来的Web。

7.弹出窗口后点击确定。

8.点击右下角的应用,然后点击创建工件。

9.点击上面那个 Web exploded,然后点击右下角的应用。

10.找到这里,如果没有出现右侧的web文件夹,可以关闭窗口重新打开。

11.鼠标右键WEB-INF,新建目录classes和lib。

12.点击上面的路径,将编译器输出修改为 使用模块编译输出路径 然后将路径修改为项目web文件夹下的WEB-INF文件夹下的classes地址(之前刚刚创建的classes),该操作的作用是配置所有编译为 .class 的文件都输出到此文件夹下,最后记得点击应用。

13.点击上面的依赖,然后点击中间的“+”,继续点击JAR和目录

14.在弹出的窗口选择项目下web文件夹下WEB-INF文件夹下的lib,然后在弹出的窗口继续选择Jar Directory。

15.选择这个依赖项,然后应用。

16.现在进行Tomcat服务器配置,点击上侧的当前文件,然后点击编辑配置。

17.点击左上角的“+”

18.找到Tomcat服务器,然后点击本地。

19.在这个界面,先要配置Tomcat服务器的路径(打开的浏览器自行按照喜爱配置),然后点击应用。

20.应用后点击修复,在这里点击 Web exploded 然后再次点击应用。

21.在返回主界面后,部分人可能没有 index.jsp 文件,这个文件可以自行配置。

22.鼠标右键web文件夹,然后新建,再点击JSP/JSPX页面,最后复制下面那段代码即可。

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <title>JSP</title>    <!--打开网页的标签名-->
</head>
<body>
$END$    <!--网页内显示的内容-->
</body>
</html>

23.完成后是这样的,注意:这个新建的文件是在web文件夹下的,最后就可以点击启动了。

24.恭喜你,完成了。


        希望大家能够从这篇文章中获得启示和收获,同时也感谢各位大佬的支持。如果您在阅读文章时发现任何问题,欢迎在评论区留言,鸿蒙会尽快回复并提供反馈!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1501805.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

宠物空气净化器值得入手吗?选购宠物空气净化器关注哪些方面?

一开始养猫时&#xff0c;每天看着可爱的猫咪在家里快乐奔跑&#xff0c;让人心情愉悦。然而&#xff0c;作为铲屎官都知道&#xff0c;猫咪会掉毛&#xff0c;特别是在换毛期间&#xff0c;地板、沙发上都会有一大堆猫毛&#xff0c;甚至衣服也可能沾满猫毛。养猫家庭中&#…

Flink 物理执行图

文章目录 物理执行图一、Task二、ResultPartition三、ResultSubpartition四、InputGate五、InputChannel 物理执行图 JobManager根据ExecutionGraph对作业进行调度&#xff0c;并在各个TaskManager上部署任务。这些任务在TaskManager上的实际执行过程就形成了物理执行图。物理…

快速上手:使用Hexo搭建并自定义个人博客

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

算法---双指针练习-6(查找总价格为目标值的两个商品)

查找总价格为目标值的两个商品 1. 题目解析2. 讲解算法原理3. 编写代码 1. 题目解析 题目地址&#xff1a;点这里 2. 讲解算法原理 算法的基本思想是首先初始化两个指针begin和end&#xff0c;分别指向数组的起始位置和末尾位置。 接下来&#xff0c;算法使用一个循环来移动e…

瑞芯微 | I2S-音频基础分享

1. 音频常用术语 名称含义ADC&#xff08;Analog to Digit Conversion&#xff09;模拟信号转换为数字信号AEC&#xff08;Acoustic Echo Cancellor&#xff09;回声消除AGC&#xff08;Automatic Gain Control&#xff09;自动增益补偿&#xff0c;调整MIC收音量ALSA&#xf…

Stable Diffusion 3报告

报告链接&#xff1a;https://stability.ai/news/stable-diffusion-3-research-paper 文章目录 要点表现架构细节通过重新加权改善整流流量Scaling Rectified Flow Transformer Models灵活的文本编码器RF相关论文 要点 发布研究论文&#xff0c;深入探讨Stable Diffuison 3的…

HarmonyOS 数据持久化 关系型数据库之 初始化操作

上文 HarmonyOS 数据持久化之首选项 preferences 我们有说用户首选项 但它只能处理一些比较简单的数据类型结构 的持久化处理 如果是一些批量较大 结构较为复杂的数据结构 那么 首选项就无法满足了 我们就要选择 关系型数据库 通过 SQLite 组件实现的一种本地数据库&#xff0…

IPSEC VPPN实验

实验背景&#xff1a;FW1和FW2是双机热备的状态。 实验要求&#xff1a;在FW和FW3之间建立一条IPSEC通道&#xff0c;保证10.0.2.0/24网段可以正常访问到192.168.1.0/24 IPSEC VPPN实验配置&#xff08;由于是双机热备状态&#xff0c;所以FW1和FW2只需要配置FW1主设备即可&…

企业专属采购商城搭建,对接电商平台数量越多越好吗?

近年来在国家政策驱动和国央企的引领示范下&#xff0c;企业采购逐渐从线下向电商化迈进&#xff0c;采购电商平台的应用让越来越多的传统企业、中小企业开始意识到数字化商城采购的价值。搭建企业自有专属采购商城&#xff0c;内接企业各类信息管理系统&#xff0c;外联电商采…

spring-cloud-openfeign 3.0.0(对应spring boot 2.4.x之前版本)之前版本feign整合ribbon请求流程

在之前写的文章配置基础上 https://blog.csdn.net/zlpzlpzyd/article/details/136060312 下图为自己整理的

阿里云k8s内OSS报错UnKnownHost。

这个问题就是链接不上oss属于网络问题&#xff1a; 1.排查服务器 在服务器&#xff08;ecs&#xff09;上直接ping oss地址看是否能够通。 不通就要修改dns和hosts&#xff08;这个不说&#xff0c;自己网上查&#xff09; 2.排查容器 进去ping一下你的容器是否能访问到oss…

07.axios封装实例

一.简易axios封装-获取省份列表 1. 需求&#xff1a;基于 Promise 和 XHR 封装 myAxios 函数&#xff0c;获取省份列表展示到页面 2. 核心语法&#xff1a; function myAxios(config) {return new Promise((resolve, reject) > {// XHR 请求// 调用成功/失败的处理程序}) …

生活的色彩--爱摸鱼的美工(17)

题记 生活不如意事十之八九&#xff0c; 恶人成佛只需放下屠刀&#xff0c;善人想要成佛却要经理九九八十一难。而且历经磨难成佛的几率也很小&#xff0c;因为名额有限。 天地不仁以万物为刍狗&#xff01; 小美工记录生活&#xff0c;记录绘画演变过程的一天。 厨房 食…

BUUCTF---[MRCTF2020]你传你呢1

1.题目描述 2.打开题目链接 3.上传shell.jpg文件&#xff0c;显示连接成功&#xff0c;但是用蚁剑连接却连接不上。shell文件内容为 <script languagephp>eval($_REQUEST[cmd]);</script>4.用bp抓包&#xff0c;修改属性 5.需要上传一个.htaccess的文件来把jpg后缀…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Marquee)

跑马灯组件&#xff0c;用于滚动展示一段单行文本。仅当文本内容宽度超过跑马灯组件宽度时滚动&#xff0c;不超过时不滚动。 说明&#xff1a; 该组件从API Version 8开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 无 接口 Ma…

CleanMyMac X4.15.0专为macOS设计的清理和优化工具

CleanMyMac X 是一款专为 macOS 设计的清理和优化工具。其基本功能和特点主要包括&#xff1a; 系统清理&#xff1a;CleanMyMac X 可以扫描并清除 macOS 系统中的垃圾文件&#xff0c;如缓存、日志、无用的语言文件等&#xff0c;从而释放硬盘空间并提高系统性能。应用程序管…

Webpack常用配置及作用

一 、 二、 三、 四、 五、 六、 七、 八、

AVL树讲解

AVL树 1. 概念2. AVL节点的定义3. AVL树插入3.1 旋转 4.AVL树的验证 1. 概念 AVL树是一种自平衡二叉搜索树。它的每个节点的左子树和右子树的高度差&#xff08;平衡因子&#xff0c;我们这里按右子树高度减左子树高度&#xff09;的绝对值不超过1。AVL的左子树和右子树都是AV…

Cloud-Eureka服务治理-Ribbon负载均衡

构建Cloud父工程 父工程只做依赖版本管理 不引入依赖 pom.xml <packaging>pom</packaging><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.9.RELEA…

AIGC启示录:深度解析AIGC技术的现代性与系统性的奇幻旅程

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…