最近发现,很多网友喜欢把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文件内。
分享到:
相关推荐
2. **删除`work`目录下的文件**:找到Tomcat的安装目录,通常情况下,Tomcat会将编译后的JSP文件存储在`work`目录下。你可以手动进入该目录并删除其中的所有文件。 ```bash rd /s /q "D:\Program Files\tomcat-...
`work`目录在Tomcat的文件结构中扮演着重要角色,它是Tomcat用来存储JSP编译后的Java类文件的地方。这些文件不是应用程序的一部分,而是Tomcat在运行时自动生成的,以提高性能。然而,当开发过程中频繁修改JSP文件时...
Tomcat支持Web应用的热部署,当检测到应用目录中的文件变化时,能够自动重新加载或更新应用。 10. **优化与性能**: 为了提升性能,Tomcat允许调整各种参数,如最大线程数、连接超时、缓冲区大小等。此外,还可以...
1. **`work`目录**:这是Tomcat生成并存储编译后的JSP文件的地方。当JSP页面被访问时,Tomcat会将其转换为Java类并存储在这个目录下。如果JSP文件有修改,不清除这个目录,Tomcat可能继续使用旧的编译结果,导致更新...
《How Tomcat Work》第一章主要围绕Tomcat服务器的实例应用展开,旨在帮助读者理解并实践Tomcat在实际开发中的工作原理。Tomcat是一款开源的、轻量级的应用服务器,主要用于运行Java Servlet和JavaServer Pages(JSP...
《How Tomcat Work 第二章 实例应用》深入解析 在深入探讨Tomcat工作原理之前,我们先要了解什么是Tomcat。Apache Tomcat是一款开源的Java Servlet容器,它实现了Java Servlet和JavaServer Pages (JSP) 规范,是...
Tomcat在处理动态内容时,如JSP,会将编译后的Java类存储在工作目录(work目录)下的各个应用特定子目录中。这些编译后的类文件就是缓存的一部分,它们允许Tomcat快速响应后续的相同请求,而无需每次都重新解析和...
2. **服务器端缓存**:在JSP应用中,服务器端可能使用各种缓存机制,比如Tomcat的Work目录,用于存储编译后的JSP文件;或者是应用框架如Spring MVC中的视图解析缓存。对于这些缓存,清空通常需要通过以下方式: - *...
默认情况下,JSP页面被临时编译到`work/Catalina/localhost/应用名`目录下,而最终的编译结果(.class文件)会被放在`WEB-INF/classes`目录下。你可以通过修改`jasper`或`JspServlet`的`jspFile`属性来改变这个路径...
如果遇到问题,可以尝试清理Tomcat的工作目录下的`work/Catalina/localhost`下的对应项目目录,以清除缓存。 7. **避免编译错误**: - 确保你的代码没有编译错误,因为有错误的情况下,热部署可能无法正常工作。 ...
- Tomcat在`work`目录下生成的`tldCache.ser`文件是JSP编译和缓存的一部分。这个文件存储了JSP页面转换成Servlet时的元数据,有助于提高性能。 5. **拷贝文件到webapps**: - 当将开发完成的Web应用部署到Tomcat...
#### 一、Tomcat 6.0 目录结构与配置概述 Tomcat 是一个免费开源的轻量级 Web 应用服务器,广泛应用于 Java Web 开发环境之中。对于 Tomcat 6.0 来说,其目录结构和配置文件对系统的正常运行至关重要。 - **`...
- 找到Tomcat安装目录下的`work`文件夹(通常是`%CATALINA_HOME%\work`),将其清空或者删除整个文件夹。这样做的目的是确保Tomcat在重启后能够重新编译和加载最新的资源文件。 ##### 4. 重启Tomcat服务 - 完成...
Apache Tomcat 8.0.44 是一个广泛使用的开源软件,主要作为Java Servlet和JavaServer Pages (JSP) 的Web应用服务器。Tomcat是Apache软件基金会Jakarta项目的一部分,它实现了Java EE(现在称为Java Platform, ...
1. **Tomcat结构**:Tomcat的目录结构包括bin、conf、lib、logs、webapps和work等目录,每个目录都有其特定的功能。例如,bin目录存放可执行文件,conf存储服务器配置文件,webapps用于部署Web应用,而work目录则...
3. **目录结构**:Apache Tomcat的目录结构包括`bin`(用于启动和停止服务器)、`conf`(配置文件)、`webapps`(存放Web应用)、`logs`(日志文件)、`temp`(临时文件)、`work`(编译后的JSP和Servlet)等。...
- `work`:Tomcat工作目录,存储Servlet编译后的class文件和JSP转换的Servlet源码。 4. **管理工具** - **Manager App**:内置的Web应用,允许用户部署、卸载、重部署和管理Web应用程序。 - **Host Manager**:...
7. **工作目录和临时文件**:`work`目录存储了JSP编译后的文件和应用程序运行时的临时文件;`temp`目录则用于存放程序运行时产生的临时文件。 **安装与部署** 1. 下载并解压Tomcat 8.0.21的压缩包,会得到包含`...
如果想要清除服务器缓存,清空此目录并重启Tomcat是一个常见做法。 9. **BUILDING.txt, CONTRIBUTING.md, LICENSE, NOTICE, RELEASE-NOTES, RUNNING.txt**: - 这些文件提供了关于Tomcat构建过程、贡献指南、许可...
5. **目录结构**:Tomcat的目录结构包括`bin`(存放可执行文件)、`conf`(配置文件)、`lib`(共享库)、`webapps`(放置Web应用)、`work`(存放编译后的JSP文件和临时文件)等。 6. **启动与停止**:Tomcat可以...