最近发现,很多网友喜欢把tomcat的work目录里的东西叫做缓存,其实那不是很恰当,work目录只是tomcat的工作目录,也就是tomcat把jsp转换为class文件的工作目录,这也正是为什么它叫work目录而不是cache目录的原因。 jsp,tomcat的工作原理是当浏览器访问某个jsp页面时,tomcat会在work目录里把这个jsp页面转换成.java文件,比如将index.jsp转换为index_jsp.java文件,而后编译为index_jsp.class文件,最后tomcat容器通过ClassLoader类把这个index_jsp.class类装载入内存,进行响应客户端的工作。
tomcat会定时稍描容器内的jsp文件,读取每个文件的属性,当发现某个jsp文件发生改变时(文件的最后修改时间与上次稍描时不相同时),tomcat会重新转换、编译这个jsp文件。但是tomcat的稍描是定时的不是实时的,这也正是为什么jsp文件修改后需要几分钟的时间来等修改过的jsp生效。当然为了即刻生效,很多老前辈都会建议在修改jsp页面后立即清除work目录里的文件。
另外,tomcat容器中,对转换后的java文件(比如:index_jsp.java)的编译最大只支持64k,所以在其他容器中的jsp移植到tomcat容器中时会遇到大jsp文件会发生无法编译的情况,所以建议把jsp中的业务逻辑写入单独的类,在jsp中通过调用这个类的静态方法来执行,并将jsp页面中的js提取出来放到单独的js文件内。
觉得很不错的文章 就转载了~~
分享到:
相关推荐
"how tomcat work 中文版" 这个标题和描述重复多次,表明我们关注的主题是关于Tomcat服务器的工作原理的中文解释。Tomcat是一款开源的、基于Java Servlet和JavaServer Pages(JSP)技术的Web应用服务器,由Apache...
标题 "清空Tomcat中的work目录并重启Tomcat.bat" 暗示这是一个批处理脚本,用于自动化清理Apache Tomcat服务器的`work`目录,然后重启服务。这个过程对于Java开发人员来说非常有用,因为它可以帮助他们清理临时编译...
而"HowTomCatWorks"很可能是源码的目录或者解压后的源代码文件,读者可以直接查看和分析Tomcat的源代码,这对于深入学习和定制Tomcat非常有帮助。 总的来说,这份资料对于想要深入了解Tomcat、提升服务器性能的...
Tomcat支持Web应用的热部署,当检测到应用目录中的文件变化时,能够自动重新加载或更新应用。 10. **优化与性能**: 为了提升性能,Tomcat允许调整各种参数,如最大线程数、连接超时、缓冲区大小等。此外,还可以...
《How Tomcat Work 第二章 实例应用》深入解析 在深入探讨Tomcat工作原理之前,我们先要了解什么是Tomcat。Apache Tomcat是一款开源的Java Servlet容器,它实现了Java Servlet和JavaServer Pages (JSP) 规范,是...
8. **部署与热部署**:开发者可以将Web应用打包为WAR文件部署到Tomcat的webapps目录下,Tomcat会自动解压并加载应用。此外,Tomcat还支持热部署,即在不重启服务器的情况下更新应用。 9. **安全配置**:Tomcat提供...
《How Tomcat Works》是一本专门讲解Tomcat内部工作机制的书籍,对广大Java开发者,尤其是对Tomcat源码和servlet容器工作原理感兴趣的开发者来说,这本书能够帮助他们深入了解Tomcat的架构以及如何进行自定义和优化...
《How Tomcat Work》第一章主要围绕Tomcat服务器的实例应用展开,旨在帮助读者理解并实践Tomcat在实际开发中的工作原理。Tomcat是一款开源的、轻量级的应用服务器,主要用于运行Java Servlet和JavaServer Pages(JSP...
本文将详细介绍Tomcat5的目录结构及其各个组成部分的功能与作用。 #### 二、目录结构 ##### 2.1 bin目录 - **位置**:位于Tomcat安装目录的根目录下。 - **功能介绍**: - 包含了用于启动和停止Tomcat服务的脚本...
《深入解析Tomcat工作原理:源代码探索》 Tomcat,作为Apache软件基金会的开源项目,是Java Servlet和JavaServer Pages(JSP)技术的主要应用服务器,被广泛应用于Web应用程序的部署与运行。《How Tomcat Works》这...
### Tomcat虚拟目录配置详解 #### 一、Tomcat虚拟目录概述 在Web开发中,为了更好地管理和组织项目,我们常常需要对Web服务器进行虚拟目录的配置。虚拟目录(Virtual Directory)是一种在Web服务器中映射物理目录...
1. **源码结构分析**:了解项目的目录结构和主要模块,比如`catalina`、`coyote`、`jasper`等。 2. **关键类和接口**:深入研究如`StandardServer`、`StandardService`、`ThreadPool`、`ProtocolHandler`等核心类。...
Tomcat处理Web应用的部署,包括WAR文件的解压、WEB-INF目录的解析等。源码中可以看到Context对象如何表示一个Web应用,以及其内部的资源加载和初始化过程。 6. **JSP与EL表达式** Tomcat支持JSP页面的编译和执行...
通过上述对Tomcat目录结构的详细介绍,我们可以看出每个目录都有其独特的功能和作用。熟悉这些目录的用途有助于开发者更高效地部署和管理Java Web应用程序。此外,在实际开发过程中,合理利用这些目录的特点还可以...
以下是对Tomcat主要目录及其作用的详细解释: 1. **bin目录**:包含启动、停止和管理Tomcat的脚本,如`catalina.sh`(Unix/Linux)或`catalina.bat`(Windows),以及用于其他操作的辅助脚本。 2. **conf目录**:...
在进行Tomcat的学习之前,你需要准备一些先决软件,并搭建适当的目录结构来存放你的代码。例如,你需要下载Java开发工具包(JDK)来编译和运行Java代码,还需要下载Tomcat服务器和相关的依赖库。 本书还详细介绍了...
《深入理解Tomcat工作原理:源码...2. **Jasper**:JSP的处理涉及`org.apache.jasper.JspC`和`org.apache.jasper.compiler.Generator`类,它们负责将JSP转换为Servlet源代码,并通过`java.sun.net....-INF/classes目录...
本文将详细介绍Tomcat的各个目录以及它们的作用。 #### 二、目录结构 Tomcat的根目录通常被标记为`<CATALINA_HOME>`。以下是对Tomcat各个主要目录的详细介绍: 1. **bin目录** - **位置**: `<CATALINA_HOME>/bin...
5. `<CATALINA_HOME>/work`: 这是Tomcat处理JSP文件的工作目录,存储编译后的Servlet类和其他中间结果。JSP文件首先被转换成Java源代码,然后编译成`.class`文件,最后在这个目录下运行。 6. `<CATALINA_HOME>/temp...