1.Tomcat目录讲解
在其之前先了解一下各个目录的作用。
Tomcat下载完成后,解压,我把解压后的文件放在了用户目录下面的个人用户目录下面,如下图:
下面打开该文件,如下:
我们简单说一下其中各个目录的作用:
- bin 专门用来存放 Tomcat 服务器的可执行程序
- conf 专门用来存放 Tocmat 服务器的配置文件
- lib 专门用来存放 Tomcat 服务器的 jar 包
- logs 专门用来存放 Tomcat 服务器运行时输出的日记信息
- temp 专门用来存放 Tomcdat 运行时产生的临时数据
- webapps 专门用来存放部署的 Web 工程。
- work 是 Tomcat 工作时的目录,用来存放 Tomcat 运行时 jsp 翻译为 Servlet 的源码,和 Session 钝化的目录。
2.conf\Catalina\localhost目录下的配置文件
下面我举两个例子说明:
2.1例一:终端启动Tomcat来观察配置文件的作用
2.1.1创建配置文件,配置文件的作用及注意事项
在上述目录下创建一个xml文件,文件创建好后如下:
文件内容如下:
<Context path="/ysw" docBase="/Users/yushiwen/Desktop/tomcatTest" />
其内容含义如下:
path 表示工程的访问路径:/yswdocBase 表示实际的工程目录在哪里,也就是我们需要访问tomcatTest文件在我们主机上的全路径
注意:这个地方path的参数即
/ysw
要与配置文件名称相一致,可以看到配置文件为ysw.xml
,其文件名称与path的参数即/ysw
相一致。
2.1.2终端启动Tomcat,更改其默认端口号
mac用户或类linux系统用户,在终端输入
sudo sh startup.sh批处理文件的全路径
,如下:
windows系统用户直接点击运行startup.bat
批处理文件即可,文件如下:
另外,关闭Tomcat命令为:sudo sh shutdown.sh文件的全路径
,windows系统用户直接运行shutdown.bat文件或者直接关闭窗口就可以了。
我们还可以更改conf目录下的server.xml文件,来修改其端口号
默认端口号为8080,我们现在将其端口号改为10000,如下:
下面启动好Tomcat后我们打开浏览器,输入
http://localhost:10000/
,测试Tomcat启动是否成功,若出现如下图标,启动成功:
2.1.3访问在步骤2.1.1配置文件中配置好的资源
在步骤2.1.1配置文件中我们的
path=/ysw
,所以我们现在只需要在浏览器中访问http://localhost:10000/ysw/
就可以访问到docBase="/Users/yushiwen/Desktop/tomcatTest"
即服务器所运行的主机/Users/yushiwen/Desktop目录下的tomcatTest文件。
tomcatTest文件内容如下:
浏览器访问http://localhost:10000/ysw/
,如下:
访问成功。
看到这里你应该弄明白了conf\Catalina\localhost目录下的配置文件的作用,下面我们再来举一个idea启动tomcat的例子,再看第二个例子,绝对会让你直接顿悟。
2.2例二:idea整合并启动Tomcat来观察配置文件的作用
idea整合Tomcat的步骤这里我不加以赘述,大家去网上搜索应该有许多教程。
下面我们直接开门见山:
直接启动程序,idea自动打开浏览器,并访问其url,如下:
这里端口号为什么是8080呢,我们不是在conf目录下的server.xml文件中配置了端口号为10000吗?为什么会这样?
这是因为我在idea中又重新配置了它的端口号,配置的是8080,如下:
下面我们来看主题:
先看CATALINA_BASE和CATALINA_HOME,这两个是tomcat在idea中启动时出现的提示信息,如下:
CATALINA_HOME是Tomcat的安装目录CATALINA_BASE是Tomcat的工作目录
我们先来看CATALINA_HOME: /Users/yushiwen/apache-tomcat-9.0.41
:
可以看到是Tomcat的工作目录
再来看CATALINA_BASE: /Users/yushiwen/Library/Caches/IntelliJIdea2018.1/tomcat/Tomcat_9_0_41_03_jQuery
:
这是是Tomcat的工作目录,我们看其子目录conf/Catalina/localhost/ROOT.xml文件,这个是Tomcat自动为其创建的配置文件,如下:
打开文件看其内容:
可以看到其配置文件内容也是path=“xxx” docBase="xxx"的形式,与标题2.1例一中的配置文件的内容是相似的,那么我们就很好理解了,我们访问http://localhost:8080/
时,它会去找docBase="xxx"在主机上的地址,在主机上找到如下的工程文件:
解下来我们在看其server.xml配置文件:
文件内容如下:
可以看到端口号为8080,它与在终端启动的tomcat程序的工作目录不是同一个,它们都有各自的配置文件。
对于本人的电脑而言:
终端启动的tomcat,它的tomcat安装目录与工作目录都在/Users/yushiwen/apache-tomcat-9.0.41目录下而idea整合并启动的tomcat,它的安装目录在/Users/yushiwen/apache-tomcat-9.0.41目录下,它的工作目录在/Users/yushiwen/Library/Caches/IntelliJIdea2018.1/tomcat/Tomcat_9_0_41_03_jQuery