Tomcat就是一个服务器,管理web容器,核心就是Servlet和JSP引擎
(其他WEB服务器支持J2EE(13门技术),而Tomcat仅支持Jsp和Servlet)
Tomcat底层就是ServerSocket
?
Tomcat目录
bin: 启动 关闭Tomcat脚本文件
config:(server.xml重要) 服务器配置文件
lib: jar包库
logs: Tomcat日志文件
temp: 临时存储文件
webapps:(重要) 外界访问web资源存放目录
work: Tomcat工作目录
3种方式项目发布
一 复制项目到webapps目录下
在webapps下创建文件夹
将war包放在创建好的文件夹中
开启Tomcat,浏览器访问WEB容器中的资源(war)
localhost:8080/demo/1.html
(如果资源是index.html可以省略资源名)
localhost:8080/demo/
(放在webapps下的资源一定要包裹一个文件夹)
二 复制项目到ROOT目录下
在ROOT目录下存放资源
开启Tomcat
浏览器直接访问资源全称,省略中间的文件夹名ROOT
localhost:8080/test.html
(在ROOT目录下可以直接存放资源,不需要包裹文件夹)
总结:
ROOT目录在webapps中优先级最高
资源在webapps下一定要包裹文件夹
资源在ROOT下不需要再包裹文件夹
webapps / 创建目录 / 资源文件 localhost:8080/目录名/资源
webapps / ROOT / 资源文件 localhost:8080/资源
三 Conf/server.xml虚拟目录
<Host>
<Context path="/url路径" docBase="资源所在文件夹">
</HOST>
localhost:8080/path/index.html
缺点: 每次变更server.xml都需要重启Tomcat
注意: docBase指资源所在文件夹(可以开启多个项目) 但是url要写资源全称
四 conf/Catalina/localhost/路径.xml (推荐)
路径.xml中仅编写一行代码
<Context docBase="资源所在文件夹">
localhost:8080/路径/demo.html
这种方式支持热部署,每次路径.xml变更不需要重启Tomcat
总结:
三和四中 docBase仅指定资源所在文件夹
localhost:8080/path/资源全称
localhost:8080/路径/资源全称
真实Idea绑定的Tomcat资源目录会在Tomcat启动后的控制台第一行显示
Using CATALINA_BASE: "C:\Users\Ethan.