全球通讯!JavaWeb day5 Tomcat配置及idea创建Maven-Tomcat项目
2023-02-23 12:13:31 来源:腾讯云

3.Tomcat

3.1 简介

3.1.1 什么是Web服务器

Web服务器是一个应用程序(==软件==),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让Web开发更加便捷。主要功能是"提供网上信息浏览服务"。


(资料图)

在这里插入图片描述

Web服务器是安装在服务器端的一款软件,将来我们把自己写的Web项目部署到Web Tomcat服务器软件中,当Web服务器软件启动后,部署在Web服务器软件中的页面就可以直接通过浏览器来访问了。

Web服务器软件使用步骤

准备静态资源下载安装Web服务器软件将静态资源部署到Web服务器上启动Web服务器使用浏览器访问对应的资源

上述内容在演示的时候,使用的是Apache下的Tomcat软件,至于Tomcat软件如何使用,后面会详细的讲到。而对于Web服务器来说,实现的方案有很多,Tomcat只是其中的一种,而除了Tomcat以外,还有很多优秀的Web服务器,比如:

在这里插入图片描述

Tomcat就是一款软件,我们主要是以学习如何去使用为主。具体我们会从以下这些方向去学习:

简介: 初步认识下Tomcat基本使用: 安装、卸载、启动、关闭、配置和项目部署,这些都是对Tomcat的基本操作IDEA中如何创建Maven Web项目IDEA中如何使用Tomcat,后面这两个都是我们以后开发经常会用到的方式

首选我们来认识下Tomcat。

Tomcat

Tomcat的相关概念:

Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级Web服务器,支持Servlet/JSP少量JavaEE规范。概念中提到了JavaEE规范,那什么又是JavaEE规范呢?

JavaEE: Java Enterprise Edition,Java企业版。指Java企业级开发的技术规范总和。包含13项技术规范:JDBC、JNDI、EJB、RMI、JSP、Servlet、XML、JMS、Java IDL、JTS、JTA、JavaMail、JAF。

因为Tomcat支持Servlet/JSP规范,所以Tomcat也被称为Web容器、Servlet容器。Servlet需要依赖Tomcat才能运行。Tomcat的官网: https://tomcat.apache.org/ 从官网上可以下载对应的版本进行使用。

Tomcat的LOGO

在这里插入图片描述

小结

通过这一节的学习,我们需要掌握以下内容:

Web服务器的作用

封装HTTP协议操作,简化开发可以将Web项目部署到服务器中,对外提供网上浏览服务

Tomcat是一个轻量级的Web服务器,支持Servlet/JSP少量JavaEE规范,也称为Web容器,Servlet容器。

3.2 基本使用

Tomcat总共分两部分学习,先来学习Tomcat的基本使用,包括Tomcat的==下载、安装、卸载、启动和关闭==。

3.2.1 下载

直接从官网下载

在这里插入图片描述

3.2.2 安装

在D盘的software目录下,将apache-tomcat-8.5.68-windows-x64.zip进行解压缩,会得到一个apache-tomcat-8.5.68的目录,Tomcat就已经安装成功。

==注意==,Tomcat在解压缩的时候,解压所在的目录可以任意,但最好解压到一个不包含中文和空格的目录,因为后期在部署项目的时候,如果路径有中文或者空格可能会导致程序部署失败。

打开apache-tomcat-8.5.68目录就能看到如下目录结构,每个目录中包含的内容需要认识下,
在这里插入图片描述

bin:目录下有两类文件,一种是以.bat结尾的,是Windows系统的可执行文件,一种是以.sh结尾的,是Linux系统的可执行文件。

webapps:就是以后项目部署的目录

到此,Tomcat的安装就已经完成。

3.2.3 卸载

卸载比较简单,可以直接删除目录即可

3.2.4 启动

双击: bin\startup.bat

启动后,通过浏览器访问 http://localhost:8080能看到Apache Tomcat的内容就说明Tomcat已经启动成功。

在这里插入图片描述

==注意==: 启动的过程中,控制台有中文乱码,需要修改conf/logging.prooperties

在这里插入图片描述

3.2.5 关闭

关闭有三种方式

直接x掉运行窗口:强制关闭不建议bin\shutdown.bat:正常关闭ctrl+c: 正常关闭

3.2.6 配置

修改端口

Tomcat默认的端口是8080,要想修改Tomcat启动的端口号,需要修改 conf/server.xml
在这里插入图片描述

注: HTTP协议默认端口号为80,如果将Tomcat端口号改为80,则将来访问Tomcat时,将不用输入端口号。

启动时可能出现的错误

Tomcat的端口号取值范围是0-65535之间任意未被占用的端口,如果设置的端口号被占用,启动的时候就会包如下的错误
在这里插入图片描述
Tomcat启动的时候,启动窗口一闪而过: 需要检查JAVA_HOME环境变量是否正确配置
在这里插入图片描述

3.2.7 部署

Tomcat部署项目: 将项目放置到webapps目录下,即部署完成。将 资料/2. Tomcat/hello目录拷贝到Tomcat的webapps目录下通过浏览器访问http://localhost/hello/a.html,能看到下面的内容就说明项目已经部署成功。
在这里插入图片描述
但是呢随着项目的增大,项目中的资源也会越来越多,项目在拷贝的过程中也会越来越费时间,该如何解决呢?
一般JavaWeb项目会被打包称==war==包,然后将war包放到Webapps目录下,Tomcat会自动解压缩war文件将 资料/2. Tomcat/haha.war目录拷贝到Tomcat的webapps目录下Tomcat检测到war包后会自动完成解压缩,在webapps目录下就会多一个haha目录通过浏览器访问http://localhost/haha/a.html,能看到下面的内容就说明项目已经部署成功。
在这里插入图片描述

至此,Tomcat的部署就已经完成了,至于如何获得项目对应的war包,后期我们会借助于IDEA工具来生成。

3.3 Maven创建Web项目

介绍完Tomcat的基本使用后,我们来学习在IDEA中如何创建Maven Web项目,学习这种方式的原因是以后Tomcat中运行的绝大多数都是Web项目,而使用Maven工具能更加简单快捷的把Web项目给创建出来,所以Maven的Web项目具体如何来构建呢?

在真正创建Maven Web项目之前,我们先要知道Web项目长什么样子,具体的结构是什么?

3.3.1 Web项目结构

Web项目的结构分为:开发中的项目和开发完可以部署的Web项目,这两种项目的结构是不一样的,我们一个个来介绍下:

Maven Web项目结构: 开发中的项目
在这里插入图片描述
开发完成部署的Web项目
在这里插入图片描述
开发项目通过执行Maven打包命令==package==,可以获取到部署的Web项目目录编译后的Java字节码文件和resources的资源文件,会被放到WEB-INF下的classes目录下pom.xml中依赖坐标对应的jar包,会被放入WEB-INF下的lib目录下

3.3.2 创建Maven Web项目

介绍完Maven Web的项目结构后,接下来使用Maven来创建Web项目,创建方式有两种:使用骨架和不使用骨架

使用骨架

具体的步骤包含:1.创建Maven项目2.选择使用Web项目骨架3.输入Maven项目坐标创建项目4.确认Maven相关的配置信息后,完成项目创建5.删除pom.xml中多余内容6.补齐Maven Web项目缺失的目录结构

创建Maven项目
在这里插入图片描述
选择使用Web项目骨架
在这里插入图片描述
输入Maven项目坐标创建项目
在这里插入图片描述
确认Maven相关的配置信息后,完成项目创建
在这里插入图片描述
删除pom.xml中多余内容,只留下面的这些内容,注意打包方式 jar和war的区别
在这里插入图片描述
补齐Maven Web项目缺失的目录结构,默认没有java和resources目录,需要手动完成创建补齐,最终的目录结果如下
在这里插入图片描述

不使用骨架

具体的步骤包含:1.创建Maven项目2.选择不使用Web项目骨架3.输入Maven项目坐标创建项目4.在pom.xml设置打包方式为war5.补齐Maven Web项目缺失webapp的目录结构6.补齐Maven Web项目缺失WEB-INF/web.xml的目录结构

创建Maven项目
在这里插入图片描述
选择不使用Web项目骨架
在这里插入图片描述
输入Maven项目坐标创建项目
在这里插入图片描述
在pom.xml设置打包方式为war,默认是不写代表打包方式为jar
在这里插入图片描述
补齐Maven Web项目缺失webapp的目录结构
在这里插入图片描述
补齐Maven Web项目缺失WEB-INF/web.xml的目录结构
在这里插入图片描述
补充完后,最终的项目结构如下:
在这里插入图片描述

上述两种方式,创建的web项目,都不是很全,需要手动补充内容,至于最终采用哪种方式来创建Maven Web项目,都是可以的,根据各自的喜好来选择使用即可。

小结

1.掌握Maven Web项目的目录结构

2.掌握使用骨架的方式创建Maven Web项目

在这里插入图片描述

3.掌握不使用骨架的方式创建Maven Web项目

在这里插入图片描述

3.4 IDEA使用Tomcat

Maven Web项目创建成功后,通过Maven的package命令可以将项目打包成war包,将war文件拷贝到Tomcat的webapps目录下,启动Tomcat就可以将项目部署成功,然后通过浏览器进行访问即可。然而我们在开发的过程中,项目中的内容会经常发生变化,如果按照上面这种方式来部署测试,是非常不方便的如何在IDEA中能快速使用Tomcat呢?

在IDEA中集成使用Tomcat有两种方式,分别是==集成本地Tomcat==和==Tomcat Maven插件==

3.4.1 集成本地Tomcat

目标: 将刚才本地安装好的Tomcat8集成到IDEA中,完成项目部署,具体的实现步骤

打开添加本地Tomcat的面板
在这里插入图片描述
指定本地Tomcat的具体路径
在这里插入图片描述
修改Tomcat的名称,此步骤可以不改,只是让名字看起来更有意义,HTTP port中的端口也可以进行修改,比如把8080改成80
在这里插入图片描述
将开发项目部署项目到Tomcat中
在这里插入图片描述

扩展内容: xxx.war和 xxx.war exploded这两种部署项目模式的区别?

war模式是将WEB工程打成war包,把war包发布到Tomcat服务器上war exploded模式是将WEB工程以当前文件夹的位置关系发布到Tomcat服务器上war模式部署成功后,Tomcat的webapps目录下会有部署的项目内容war exploded模式部署成功后,Tomcat的webapps目录下没有,而使用的是项目的target目录下的内容进行部署建议大家都选war模式进行部署,更符合项目部署的实际情况部署成功后,就可以启动项目,为了能更好的看到启动的效果,可以在webapp目录下添加a.html页面
在这里插入图片描述
启动成功后,可以通过浏览器进行访问测试最终的注意事项
在这里插入图片描述

至此,IDEA中集成本地Tomcat进行项目部署的内容我们就介绍完了,整体步骤如下,大家需要按照流程进行部署操作练习。

在这里插入图片描述

3.4.2 Tomcat Maven插件

在IDEA中使用本地Tomcat进行项目部署,相对来说步骤比较繁琐,所以我们需要一种更简便的方式来替换它,那就是直接使用Maven中的Tomcat插件来部署项目,具体的实现步骤,只需要两步,分别是:

在pom.xml中添加Tomcat插件

org.apache.tomcat.maven
tomcat7-maven-plugin
2.2

使用Maven Helper插件快速启动项目,选中项目,右键-->Run Maven --> tomcat7:run
在这里插入图片描述

==注意:==

如果选中项目并右键点击后,看不到Run Maven和Debug Maven,这个时候就需要在IDEA中下载Maven Helper插件,具体的操作方式为: File --> Settings --> Plugins --> Maven Helper ---> Install,安装完后按照提示重启IDEA,就可以看到了。
在这里插入图片描述
Maven Tomcat插件目前只有Tomcat7版本,没有更高的版本可以使用使用Maven Tomcat插件,要想修改Tomcat的端口和访问路径,可以直接修改pom.xml
                            org.apache.tomcat.maven            tomcat7-maven-plugin            2.2                        80                                /                        

小结

通过这一节的学习,大家要掌握在IDEA中使用Tomcat的两种方式,集成本地Tomcat和使用Maven的Tomcat插件。后者更简单,推荐大家使用,但是如果对于Tomcat的版本有比较高的要求,要在Tomcat7以上,这个时候就只能用前者了。

https://market.cloud.tencent.com/

全球通讯!JavaWeb day5 Tomcat配置及idea创建Maven-Tomcat项目

2023-02-23

天天观焦点:零刺青之声金手指,一年之计在于春春归柳叶鸟声翠波气熏蒸三旧五星星点灯在六时

2023-02-23

世界快消息!天成自控:智己项目我们供应了部分部件,对公司经营影响不大

2023-02-23

依旧魔力宝贝官网_依旧魔力_速递

2023-02-23

天天热讯:珠海新型冠状病毒肺炎疫情:2月23日珠海疫情最新消息今天数据统计情况通报

2023-02-23

五菱版QQ要来了!或不超5万外观很呆萌,续航330Km竞争比亚迪海鸥

2023-02-22

高质量发展看广东|“机器人生产机器人” 自动化推动中国“智”造

2023-02-22

华纳药厂:2022年度净利润同比增长12.23%

2023-02-22

利好中央别墅区!这座大桥改造工程开工,未来出行更方便!-全球快资讯

2023-02-22

什么是半流食食谱大全_流食食谱大全

2023-02-22

女柜员钻漏洞取现398万后整容逃亡 案件详情始末细节披露!

2023-02-22

孩之宝的2022:全年净赚14亿,计划裁员1000人|雷报

2023-02-22

江苏泰兴:“梦想小屋”帮困境儿童圆梦|聚看点

2023-02-22

扶健华-资讯

2023-02-22

古代翻案有多困难呢?看看《雍正王朝》中的刘王氏遭遇就知道了_世界快播报

2023-02-22

不能被消化道直接吸收的物质-不能被消化道直接吸收的物质是

2023-02-21

信和置业公布2023财年中期权益分配方案|天天看点

2023-02-21

铜仁:治“林”护绿 守好生态底线

2023-02-21

当前聚焦:2023年全国计算机等级考试报名入口在哪

2023-02-21

养老年金保险是一种什么保险?养老年金保险优点与缺点有哪些?

2023-02-21

全球观速讯丨宫延楼蜜拓蜜的商品,虚假宣传?不可能!宫延楼用心做实业!

2023-02-21

世界播报:利民股份董秘回复:伊维菌素是新型的广谱、高效、低毒抗生素类抗寄生虫药

2023-02-21

无线路由器怎么用_家用无线路由器怎么安装

2023-02-21

智利中南部森林火灾已造成约44.1万公顷森林被毁 焦点快报

2023-02-21

“广州设计”服务横琴,这项市政工程获“最高质量水平评价”-焦点热门

2023-02-20

世界速讯:【春耕行动】呼和浩特:科技育种助春耕

2023-02-20

环球热资讯!黄山市黄山区供电公司:夯实现场教育 为基层党员注入“廉动力”

2023-02-20

全球聚焦:黎明觉醒生机和明日之后区别

2023-02-20

《又见敦煌》 终于“又见”

2023-02-20

环球看热讯:被反呛的陈老师也是有贡献的

2023-02-20

鸟笼婚姻全cg_鸟笼婚姻cg网盘

2023-02-20

中国—中东欧(沧州)中小企业合作区首家公用型保税仓库获批设立

2023-02-20

美国前总统吉米·卡特将开始接受临终关怀

2023-02-19

山东欧圣兰廷置业发展有限公司

2023-02-19

感冒了多喝热水能自愈吗_感冒了多喝热水有用吗_全球关注

2023-02-19

环球微资讯!dm500刷机教程_dm500

2023-02-19

宽带查询_宽带查询

2023-02-19

概述可持续发展观 论述可持续发展的内容

2023-02-19

安贫乐道的节目视频_安贫乐道-天天快资讯

2023-02-18

当前热门:【最新】珀尔修斯泰坦杀手修改器怎么安装(怎么用)无限生命,无限法力等

2023-02-18

关于山东鲁能的中性名不出意外会以山东泰山来提交新赛季注册名称|焦点消息

2023-02-18

打击网络谣言、共建清朗家园,中国互联网联合辟谣平台2023年1月辟谣榜-天天热点评

2023-02-18

复宏汉霖与国药控股达成深化合作 今日聚焦

2023-02-18

看热讯:威马沈晖回应“黄牛刷单”:确实遇到一些困难,全力保障复工复产

2023-02-18

农家团宠娇娇女糖宝杨德文_农家团宠娇娇女

2023-02-18

农民增收一口清 基层治理一网兜 绿美建设一直抓|东升村的“幸福果”|世界观天下

2023-02-18

世界时讯:福建迎来首个入境旅游团 港客开启“2023乐活厦门游”

2023-02-17

为周星驰配音的是谁啊_为周星驰配音的是谁

2023-02-17

免费好用OCR软件图片文字识别还能翻译

2023-02-17

扬州石塔-天天快资讯

2023-02-17

速递!2月17日新股提示:润普食品申购 亚通精工等上市

2023-02-17

智能自控:公司产品可广泛应用于光伏、锂电池等新能源行业-今日热讯

2023-02-17

WeWork2022年净亏损22.95亿美元,亏损收窄

2023-02-17

中科星图02月16日被沪股通减持5.88万股-信息

2023-02-17

慧荣发布新款PCIe 4.0 SSD主控SM2268XT

2023-02-17

河南省唐河县是哪个市|每日视点

2023-02-16

迷你世界怎么做电梯流程_迷你世界怎么做电梯-每日短讯

2023-02-16

全球微动态丨广州增城丝苗米稻田公园地址在哪里(附交通指南)

2023-02-16

每日速递:德方纳米(300769)2月16日主力资金净卖出6325.13万元

2023-02-16

atm日累计取款限额 每日关注

2023-02-16

团结奋斗 忠诚履职丨提高社区养老服务可及性|环球要闻

2023-02-16

一斤杨梅泡几斤白酒 环球视讯

2023-02-16

港股汽车股走强 蔚来涨超4%-环球今头条

2023-02-16

连接apple id服务器时出错怎么解决?-系统之家

2023-02-16

美政客为大选操弄“禁止中国买地”,专家:势必阻滞中企在美投资意愿 环球新要闻

2023-02-16

until的用法总结_until的用法

2023-02-16

当前聚焦:乐谱的结尾处有一细一粗的两条竖线叫什么_乐谱的结尾处有一细一粗的两条竖线

2023-02-16

penryn架构_penryn

2023-02-16

环球资讯:“涉黄”小卡片一旦参与,人财两空

2023-02-15

家里吉位怎么确定 实时焦点

2023-02-15

亨德森:利物浦朝正确方向迈了一步 会以德比胜利为基础继续前进 今日精选

2023-02-15

如何阻止垃圾短信 怎么防止手机上的垃圾短信

2023-02-15

追梦:防守很无趣全靠意志力 想赢就必须得这么做但我们没有

2023-02-15

abc是什么银行

2023-02-15

全球今亮点!安妮·海瑟薇个人资料简历 安妮·海瑟薇简介

2023-02-15

环球关注:上海醉白池公园开放时间+门票价格+交通指南+景点介绍

2023-02-15

米勒时刻_关于米勒时刻介绍 世界热资讯

2023-02-15

什么是银行账户 环球观热点

2023-02-15

花园路社区治安志愿者工作站

2023-02-15

环球快资讯丨学板绘需要手绘板吗?

2023-02-15

【世界热闻】北京市怀柔工商局官网_北京市海淀工商局官网

2023-02-15

netlimiter怎么限速-全球快消息

2023-02-15

我你中间加一个字大全_我和你中间加一个字_每日观察

2023-02-15

春节对联大全2020_家庭常用对联大全

2023-02-15

第十一年周华健的歌词

2023-02-15

这就是信心丨新年新消费新玩法

2023-02-14

环球精选!桑葚干的功效和作用

2023-02-14

播报:老明光官方旗舰店_老明光

2023-02-14

观察:尿频是怀孕的前兆吗_孕早期会尿频吗

2023-02-14

【环球快播报】和珅是怎么死的历史上的真相

2023-02-14

斯诺克威尔士公开赛:田鹏飞晋级傅家俊出局 9位中国选手跻身正赛 天天观焦点

2023-02-14

天天快资讯丨送女朋友生日礼物排行榜推荐

2023-02-14

适合三月你好发朋友圈经典的祝福语_全球独家

2023-02-14

礼品送什么比较好_天天快看

2023-02-14

韩国1月信息和通信技术出口下降33.2%,连续七个月下滑

2023-02-14

每日讯息!汽车资讯:奥迪将以独特的方式将电动出行变成切实的体验

2023-02-14

深化注册制改革 上交所精简优化债券业务规则 天天视点

2023-02-14

中国最有钱的人是谁?2021最新中国十大富豪排行榜|当前视点

2023-02-14

开票要加税点怎么计算_开票加10税点怎么计算

2023-02-14

重点聚焦!文房四宝是指什么生肖

2023-02-14