JSP | Tomcat目录结构详解
前排提醒:本文不涉及如何安装 Tomcat,仅分析Tomcat目录结构。
Tomcat 版本:apache-tomcat-8.5.71
Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。十分有必要了解Tomcat目录结构。
总结概括:
一级目录
bin ——Tomcat执行脚本目录
conf ——Tomcat配置文件
lib ——Tomcat运行需要的库文件(JARS)
logs ——Tomcat执行时的LOG文件
temp ——Tomcat临时文件存放目录
webapps ——Tomcat的主要Web发布目录(存放我们自己的JSP,SERVLET,类)
work ——Tomcat的工作目录,Tomcat将翻译JSP文件到的Java文件和class文件放在这里。
二级目录(仅列出一级目录下几个重要的文件)
(1) bin目录下的文件
- catalina.sh 用于启动和关闭tomcat服务器
- configtest.sh 用于检查配置文件
- startup.sh 启动Tomcat脚本
- shutdown.sh 关闭Tomcat脚本
(2) conf目录下的文件
- server.xml Tomcat 的全局配置文件
- web.xml 为不同的Tomcat配置的web应用设置缺省值的文件
- tomcat-users.xml Tomcat用户认证的配置文件
(3) lib目录下的文件
- 包含被Tomcat使用的各种各样的jar文件。
(4) logs目录下的文件
- localhost_access_log.2013-09-18 .txt 访问日志
- localhost.2013-09-18.log 错误和其它日志
- manager.2013-09-18.log 管理日志
- catalina.2013-09-18.log Tomcat启动或关闭日志文件
(5) webapps目录下的文件
- 含Web应用的程序(JSP、Servlet和JavaBean等)
(6) work目录下的文件
由Tomcat自动生成,这是Tomcat放置它运行期间的中间( intermediate)文件(诸如编译的JSP文件)地方。
如果当Tomcat运行时,你删除了这个目录那么将不能够执行包含JSP的页面。
\]
目录结构
解压Tomcat后的目录结构如下图

各目录及文件说明
| 目录及文件 | 说明 |
|---|---|
| bin | 用于存放 Tomcat的启动、停止等批处理脚本和Shell脚本 |
| bin/startup. bat | 用于在 Windows下启动 Tomcat |
| bin/startup.sh | 用于在 Linux下启动 Tomcat |
| bin/shutdown. bat | 用于在 Windows下停止 Tomcat |
| bin/shutdown.sh | 用于在 Linux下停止 Tomcat |
| conf | 用于存放 Tomcat的相关配置文件 |
| conf/Catalina | 用于存储针对每个虚拟机的 Context 配置 |
| conf/context.xml | 用于定义所有Web应用均需要加载的 Context 配置,如果Web应用指定了自己的context.xml,那么该文件的配置将被覆盖 |
| conf/catalina.properties | Tomcat环境变量配置 |
| conf/catalina.policy | 当 Tomcat在安全模式下运行时,此文件为默认的安全策略配置 |
| conf/logging.properties | Tomcat日志配置文件,可通过该文件修改 Tomcat日志级别以及日志路径等 |
| conf/server.xml | Tomcat服务器核心配置文件,用于配置 Tomcat的链接器、监听端口、处理请求的虚拟主机等。可以说,Tomcat主要根据该文件的配置信息创建服务器实例 |
| conf/tomcat-users.xml | 用于定义 Tomcat默认用户及角色映射信息,Tomcat的 Manager模块即用该文件中定义的用户进行安全认证 |
| conf/web.xml | Tomcat中所有应用默认的部署描述文件,主要定义了基础 Servlet和MIME映射。如果应用中不包含 Web. xml,那么 Tomcat将使用此文件初始化部署描述,反之,Tomcat会在启动时将默认部署描述与自定义配置进行合并 |
| lib | Tomcat服务器依赖库目录,包含 Tomcat服务器运行环境依赖lar包 |
| logs | Tomcat默认的日志存放路径 |
| webapps | Tomcat默认的Web应用部署目录 |
| work | 存放Web应用JSP代码生成和编译后产生的class文件目录 |
| temp | 存放tomcat在运行过程中产生的临时文件 |
bin目录
用于存放 Tomcat的启动、停止等批处理脚本和Shell脚本

conf目录
用于存放 Tomcat的相关配置文件

lib目录
Tomcat服务器依赖库目录,包含 Tomcat服务器运行环境依赖lar包

webapps目录
Tomcat默认的Web应用部署目录

temp目录
存放tomcat在运行过程中产生的临时文件

work 目录
Tomcat的工作目录,Tomcat将翻译JSP文件到的Java文件和class文件放在这里。
JSP | Tomcat目录结构详解的更多相关文章
- [转帖]Tomcat目录结构详解
Tomcat目录结构详解 https://www.cnblogs.com/veggiegfei/p/8474484.html 之前应该是知道一点 但是没有这么系统 感谢原作者的描述. 1.bin: 该 ...
- Tomcat目录结构详解
1.bin: 该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe.tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口 ...
- Linux文件系统的目录结构详解
Linux文件系统的目录结构详解 一.前 言 文章对Linux下所有目录一一说明,对比较重要的目录加以重点解说,以帮助初学者熟练掌握Linux的目录结构. 二.目 录 1.什么是文件系统 2.文件 ...
- Angular-cli新建项目目录结构详解
Angular-cli新建项目目录结构详解 在上一篇博客中我们已经通过Angular CLI命令行工具创建出来一个全新的Angular项目,要想写项目,首先我们要先搞清楚项目的目录结构是怎样的,每个文 ...
- Linux目录结构(目录结构详解是重点)
1.Linux目录与Windows目录对比 1.Windows目录结构 2.Linux目录结构 深刻理解Linux 树状文件目录是非常重要的,只有记住他们,你才能在命令行中任意切换,想去哪里去哪里 2 ...
- Nuxt.js学习(二) --- Nuxt目录结构详解、Nuxt常用配置项、Nuxt路由配置和参数传递
[TOC] 1.Nuxt目录结构详解 Nuxt项目文件目录结构 |-- .nuxt // Nuxt自动生成,临时的用于编辑的文件,build |-- assets // 用于组织未编译的静态资源入LE ...
- Linux 目录结构详解
Linux目录详解 Linux目录详解(RHEL5.4) 由于linux是开放源代码,各大公司和团体根据linux的核心代码做各自的操作,编程.这样就造成在根下的目录的不同.这样就造成个人不能使用他人 ...
- Tomcat7目录结构详解
1.bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe.tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启 ...
- Vue脚手架(vue-cli)搭建和目录结构详解
一.环境搭建 1.安装node.npm.webpack,不多说 2.安装vue-cli脚手架构建工具,打开命令行工具输入:npm install vue-cli -g,安装完成之后输入 vue -V( ...
- Android开发:程序目录结构详解
HelloWorld程序的目录结构概述 我们可以在文件夹中看到,HelloWorld程序的目录主要包括:src文件夹.gen文件夹.Android文件夹.assets.res文件夹. AndroidM ...
随机推荐
- Java——面向对象(static关键字开始)
一.static 可以修饰成员变量和成员方法 关键字特点: 随着类的加载而加载: 优先于对象存在: 被类的所有对象共享: 可以通过类名直接调用: 注意事项: 在静态方法中是没有this关键字的 静态的 ...
- GPTs 初体验 - 1 分钟就能创建一个自己的 ChatGPT?
就在 11.10 号早上,ChatGPT 已经偷摸的把GPTs功能,开放给所有尊贵的 Plus 用户了. 随着这波的功能开放,界面也是改了不少.点击左侧的 Explore 或者左下角的用户处,就可以直 ...
- MySQL-管理员root@'locahost' 丢失,怎么处理?
版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin 跳过授权表 ----> 不开启验证功能(无密码登录) --skip-grant-tables 阻止所有tcp/i ...
- JavaWeb项目练习(学生选课管理系统)三【登录功能】
需求: 首页为用户登录页面,管理员,教师,学生三种角色用户登录后,进入相应的功能页. 在index.jsp文件里跳转到login.jsp页面,为了更好地书写 <%@ page contentTy ...
- MATLAB时间序列数据重建与平滑:HANTS滤波
本文介绍在MATLAB中,实现基于HANTS算法(时间序列谐波分析法)的长时间序列数据去噪.重建.填补的详细方法. HANTS(Harmonic Analysis of Time Series ...
- STM32外设:专用定时器 IWDG、WWDG、RTC
主要外设: IWDG:Independent Watch DoG 独立看门狗 WWDG:Window Watch DoG 窗口看门狗 RTC: Real-Time Clock 实时时钟 IWDG 主要 ...
- [ABC238G] Cubic?
Problem Statement Given a sequence $A$ of $N$ numbers, answer the following $Q$ questions. In the $i ...
- Linux常用命令(持续完善中......)
1.查看内存 top 2.查看磁盘存储情况 df -h 3.查看端口占用情况 netstat -tunlp | grep 端口号 4.查看报告系统运行时长及平均负载 uptime 5.查看进程 ps ...
- 玩转Spring状态机
说起Spring状态机,大家很容易联想到这个状态机和设计模式中状态模式的区别是啥呢?没错,Spring状态机就是状态模式的一种实现,在介绍Spring状态机之前,让我们来看看设计模式中的状态模式. 1 ...
- 【UniApp】-uni-app-动态计算字体大小(苹果计算器)
前言 本文主要介绍uni-app中动态计算字体大小的方法 原因呢就是在上一篇文章当中我发现输入的内容已经超过了展示区域 于是我就想到了动态计算字体大小的方法,这样就可以保证输入的内容不会超过展示区域 ...