Tomcat目录总体结构:
bin目录
存放一些可执行的二进制文件,.sh结尾的为linux下执行命令,.bat结尾的为windows下执行命令。
- catalina.sh:真正启动tomcat文件,可以在里面设置jvm参数。
- startup.sh:启动tomcat(需事先配置好JAVA_HOME环境变量才可启动,该命令源码实际执行的为catalina.sh start)。
- shutdown.sh:关闭tomcat。
- version.sh:查看tomcat版本相关信息。
conf目录
用于存放tomcat相关配置文件的。
catalina.policy
项目安全文件,用来防止欺骗代码或JSP执行带有像System.exit(0)这样的命令,可能影响容器的破坏。 只有当Tomcat用-security命令行参数启动时这个文件才会被使用,即启动tomcat时, startup.sh -security 。
catalina.properties
配置tomcat启动相关信息文件
context.xml
监视并加载资源文件,当监视文件发生变化时,自动加载,通常不会去配置
jaspic-providers.xml和jaspic-providers.xsd
不常用文件
logging.properties
tomcat日志文件配置,包括输出格式、日志级别等。
server.xml
核心配置文件:修改端口号,添加编码格式等
核心组件介绍:
- Server:最顶层元素,而且唯一,代表整个tomcat容器。一个Server元素包含一个或者多个Service元素;
- Service:对外提供服务的。一个Service元素包含多个Connector元素,但是只能包含一个Engine元素;
- Connector:接收连接请求,创建Request和Response对象用于和请求端交换数据;然后分配线程让Engine来处理这个请求,并把产生的Request和Response对象传给Engine
- Engine:Engine组件在Service组件中有且只有一个;Engine是Service组件中的请求处理组件。Engine组件从一个或多个Connector中接收请求并处理