tomcat从安装到配置全过程(外加servlet炸包添加方法)
tomcat
写这篇笔记的原因很简单:
今天脑海中冒出tomcat配置和servlet配置的问题,记不太清了,就像找找笔记,我明明记得之前记过相关的笔记,就是再笔记里面找不到了,只好重新梳理归纳一下了!
一、 tomcat启动后首页访问问题
1.项目初始创建的jsp文件删除,会导致启动后首页出现404错误
二、Tomcat常见目录
-
bin目录(启动目录):
- 包含tomcat启动文件startup.bat和关闭文件shutup.bat
拓展延伸:配置Tomcat环境变量后,可以在命令行窗口启动,但每次需要点击bin目录下的启动文件 改进方法:无需进入bin目录点击启动文件,直接在命令行窗口启动,配置启动文件的环境变量,具体配置方法(尚硅谷p57) 不过当前windows中不需要单独配置Tomcat的环境变量,因为最后和idea关联后,直接在idea中启动,后续深入学习linux后,在linux中需要单独配置。
-
conf目录(配置文件目录)
- 主要包含logging.properties:用于配置tomcat是否乱码问题
- server.xml:用于配置tomcat端口号相关配置。
- tomcat-users.xml:配置tomcat账号密码等
- web.xml:配置tomcat里面部署项目的配置信息。
-
lib目录(存放炸包(jar包)
-
1、JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。
2、JAR 文件非常类似 ZIP 文件——准确的说,它就是 ZIP 文件,所以叫它文件包。
3、JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。
4、以客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。
jar包:通常是开发时要引用通用类,打成包便于存放管理。
war包:是做好一个web应用后,通常是网站,打成包部署到容器中。
ear包:企业级应用,通常是EJB打成ear包。
所有的包都是用jar打的,只不过目标文件的扩展名不一样
————————————————版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/CharlesCFA/article/details/114756446
-
logs目录(日志文件):主要记录tomcat启动和停止等记录日志。
-
temp(临时文件目录):用于存放临时文件。
-
work目录(与jsp技术有关):jsp技术不使用了。
-
webapps目录:专门部署web应用的目录。
-
三、tomcat配置
-
下载tomcat。在官网下载tomcat8或者9的相关版本,10以后语法更改,做项目要改导的包,还是下载8或者9版本。一般选择x64,zip(pgp,sha512)参考介绍Tomcat官网下载版本:如何选择tar.gz (pgp, sha512)和zip (pgp, sha512)? - 秋吉菜 - 博客园
对于下载的文件格式解释:
tar.gz (pgp, sha512):这是一种在 Unix-like 系统(如 Linux 和 macOS)中常用的压缩格式。tar是一种将多个文件合并为单个文件(归档)的工具,而gz是 gzip,用于压缩归档文件 zip (pgp, sha512):zip 是一种跨平台的文件压缩格式,Windows、macOS 和 Linux 都支持。和tar.gz类似,pgp和sha512用于验证文件。
此外,旧版本的可以在左侧Download的Archives(档案)中的bin目录中下载。源码在src目录中下载(就是tomcat软件的源码,一般不用,除非你想要重新定义tomcat,改人家的开源代码,等你成为大神再来打这关)
-
先配置jdk的环境变量。tomcat的bin目录里有启动文件和关闭文件,但是启动之前要配置jdk环境变量,否则无法启动(启动窗口一闪而过)因为tomcat是java语言开发的,运行时需要JAVA_HOME来获得JRE的安装位置,故要配置环境变量。如果不配置该环境变量只能在jdk存在的目录下,可以使用java和javac指令,在其他目录下无法使用,为了在任意的目录下(包括tomcat的bin目录),都可以使用java和javac指令进行编译运行,需要配置)。电脑的系统->高级设置->环境变量,此路径打开后,自己选择在用户变量或者系统变量里面新建,新建内容:
变量名 JAVA_HOME 变量值 自己所安装的jdk的路径 然后接着编辑path环境变量,增加%JAVA_HOME%\bin,就可以了。
-
解压缩。找个D盘解压缩,打开后基本目录上面第二条有介绍。这样在tomcat的bin目录中点击启动文件就可以在命令行启动了。(会有乱码问题先不管随后解决)。
-
在浏览器测试tomcat是否启动成功。打开浏览器访问localhost:8080(中文冒号),回车出现tomcat官网页面,就是安装启动成功了。
-
解决刚才启动窗口的乱码问题。在tomcat的conf文件夹中找logging.properties文件,打开后找控制台ConsoleHander.encoding,将其改为GBK,之后保存,就可以了
-
后续在idea中部署tomcat,就无需手动进入tomcat的bin目录启动了。
四、在idea中部署tomcat
- 第一种方式:创建java普通项目,然后右击工程名单击add framework support(添加资源组件,将web app添加进去),然后找run选项,选择edit config~左边点加号,将tomca local加进去,最后再Deployment里面加工程就可以了。
- 第二种方式:创建java enterprise项目,选中web Application,如果建项目时候已经选中tomcat,进入后直接就可以使用了(和第三种差不多),因为选web application的时候,就已经选中了tomcat。但是如果没有选中tomcat,还是要再run里面选中才行。(一般将tomcat添加之后,下次就会自动选中了)黑马教材书上就是第二种的这种情况,没有选中。
- 第三种方式:提前再关闭所有项目的小窗口右下角选中setting,找到build,execution,deployment里面的application servers,之后将tomcat提前加进来,然后再创建java enterprise项目,选中web application,这样tomcat直接就加进来了,进去后,直接就可以使用
五、导入servlet的jar包方式
- 第一种:直接再file里面的project structure的modules里面加入tomcat的依赖就行,之后再external libraries(外部库)就可以看到这个servlet炸包。
- 第二种:只创建java项目创建后添加外部资源组件或者创建java enterprise项目但是不选中tomcat。进去后在run里面配置完tomcat后不会自动加tomcat依赖,这时候你可以选择第一种方式或者在file里面的project structure的libraries里面把你的工程加进去,然后在右边点加号把tomcat的servlet的jar包文件加进去,这样在external libraries里面虽然没有tomcat依赖,但是又相关jia包,可以使用。
- 第三种:直接把tomcat的lib目录下的jar包加到file里面的project structure的module依赖里面去,外部库就会出现。或者直接把jar包粘贴到你自己再web-inf的lib目录下,然后右键选择add as library,其实就相当将lib目录作为依赖加入到module里面,还是一样的。
作者:yzh先生
博客:https://www.cnblogs.com/ZiJun
本文版权归作者和博客园共有,转载请在文章中注明原文链接:https://www.cnblogs.com/ZiJun/p/18496500 ,愿尊重劳动成果,谢谢!
若有关于博客内容的各种问题,欢迎在评论区讨论或发消息,让我们一起进步!