前言:本文章是Java Web后端技术系列的第二篇,主要介绍Tomcat服务器,接下来将持续更新,感兴趣的小伙伴欢迎持续关注。因为我也是刚接触Java web方面的知识,尚有许多不足,如有错误欢迎指正!
介绍
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
下载
下载地址:https://tomcat.apache.org/download-80.cgi
打开网页下载相应版本即可。
目录结构
下载解压之后,我们可以看到这些目录
- bin:存放Tomcat命令,包含了启动和停止tomcat服务的命令
- conf:存放配置文件
- lib:存放依赖的jar包
- logs:存放运行日志
- temp:存放临时文件
- webapps:存放要发布的网页
- work:存放web相关的临时文件
其中需要重点关注的目录是:bin、conf、webapps
使用
启动和关闭
启动
bin
目录下的
startup.bat
双击启动,要有
Server startip in xxxxms
才算成功。
Tomcat默认端口号是8080
关闭
关闭方法:
- 直接关掉doc窗口
- 双击shutdown.bat
- 在doc窗口中按两次ctrl+C,效果同第二个方法
启动报错
如果启动时出现错误,可以对应下面的情况一一解决
情况一
现象: doc窗口一闪而过(不到半秒)
原因:可能是没有配置好Java环境变量
JAVA_HOME
和
PATH
情况二
现象:启动时报错(黑框口等了一会就关闭)
原因:可能是8080端口被占用了。
查看logs日志文件
解决方法:
-
杀死对应进程
找出占用8080端口的进程pid:
然后再任务管理器中结束它netstat -ano | findstr 8080
-
修改Tomcat端口号
打开conf目录下的server.xml文件,修改端口号。
端口号的设定范围:1024~65535
发布项目的三种方式
webapps部署(最简单)
直接放置在 webapps 目录下
这种方案(支持热更新),一般在开发完毕后来使用的。
浏览器的路径就是webapps文件夹下项目的路径。
server.xml部署(了解)
在
tomcat/conf/server.xml
中找到标签,添加
<Context/>
标签
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
<!--新增的-->
<Context path='myapp' docBase='C:\Users\Leo\Desktop\webapps\myapp'/>
</Host>
context标签中,path是虚拟路径(即浏览器输入的路径),docBase是真实路径(即项目所在的物理路径)。
缺点:
- 配置文件修改后需要重启Tomcat。
-
是tomcat的核心配置文件,如果稍有不慎操作失误,整个tomcat启动失败,故我们应该尽量避免修改这个文件。server.xml
独立xml部署(开发时使用)
在
tomcat/conf/Catalina/localhost
目录下创建一个xml文件,添加
<Context/>
标签。xml文件的名称就是虚拟路径,因此Context标签中只需要指定docBase属性即可:
<Context docBase='C:\Users\Leo\Desktop\webapps\myapp'/>
在IDEA中配置Tomcat
如下图选择
Edit Configurations
然后添加tomcat即可。
创建一个web项目
编写完代码之后,配置tomcat服务器后即可运行。