tomcat下的work目录

 

最近发现,很多网友喜欢把tomcat的work目录里的东西叫做缓存,其实那不是很恰当,work目录只是tomcat的工作目录,也就是tomcat把jsp转换为class文件的工作目录,这也正是为什么它叫work目录而不是cache目录的原因。

  

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文件内。

 

原帖地址:http://blog.sina.com.cn/s/blog_5f4a07930100w1dq.html

 

 

时间: 2024-11-03 01:13:30

tomcat下的work目录的相关文章

jsp连接SQL server在tomcat下如何配置数据连接

问题描述 <%@pageimport="java.lang.*,java.io.*,java.sql.*,java.util.*"contentType="text/html;charset=gb2312"%><html><body><%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();Stringurl

在 lib 下新建一个目录放入 jar 包,tomcat访问不到

问题描述 在 lib 下新建一个目录放入 jar 包,tomcat访问不到 如在lib 下新建一个hibernate 的目录,将heibernate相关的jar包放到里面,编译时正常 ,但是在tomcat 环境下,找不到目录内的jar包. 将这些jar放到 lib目录下又可正常运行, 请问是需要配置哪些地方吗. 解决方案 设置jar包的lib目录 解决方案二: 首先,可以重新发布下项目,看看有没有问题,其次,再试试手动将这个jar添加到类路径下. 解决方案三: 要放到WEB-INF下面,你可以在

有关tomcat下root目录的问题

问题描述 有关tomcat下root目录的问题 我把tomcat下root目录中的index.jsp(以前自己写的,不是里面自带的)删掉了,放了个新的index.jsp,再启动tomcat,输入http://localhost:8080/index.jsp结果显示的确是以前那个, 有谁知道可以帮帮忙不,谢谢了! 解决方案 1.删除work目录 2.清除浏览器缓存 3.换个tomcat 解决方案二: 到tomcat目录下有个work目录,把里面东西删掉就ok了 tomcat是有缓存的 解决方案三:

Web框架tomcat 5.0 的目录结构

web tomcat下有9个目录,分别是bin,common,conf,logs,server,shared,temp,webapps,work 目录,现在对每一目录做介绍. tomcat根目录在tomcat中叫<CATALINA_HOME>,文章中把tomcat解压后在c:/下. 1.<CATALINA_HOME>/bin: 存放各种平台下启动和关闭Tomcat的脚本文件.其中有个档是catalina.bat,打开这个windos配置文件,在非注释行加入JDK路径,例如 : SE

Tomcat下配置MySQL数据库连接池

mysql|数据|数据库|数据库连接 经过大半天的实践和摸索,终于在Tomcat下成功地配置MySQL的数据库连接池.总结如下: 1.在$CATALINA_HOME/conf/server.xml中添加配置信息,声明连接池的具体信息,添加内容如下: <!--声明连接池--> <Resource name="jdbc/mysql"auth="Container" type="javax.sql.DataSource"/> &

在Tomcat下JSP、Servlet和JavaBean环境的配置

js|servlet 经常看到jsp的初学者问tomcat下如何配置jsp.servlet和bean的问题,于是总结了一下如何tomcat下配置jsp.servlet和ben,希望对那些初学者有所帮助. 第一步:下载j2sdk和tomcat:到sun官方站点(http://java.sun.com/j2se/1.4.2/download.html)下载j2sdk,注意下载版本为Windows Offline Installation的SDK,同时最好下载J2SE 1.4.2 Documentat

Tomcat下JSP、Servlet和JavaBean环境的配置

js|servlet 经常看到jsp的初学者问tomcat下如何配置jsp.servlet和bean的问题,于是总结了一下如何tomcat下配置jsp.servlet和ben,希望对那些初学者有所帮助.  第一步:下载j2sdk和tomcat:到sun官方站点(http://java.sun.com/j2se/1.4.2/download.html)下载j2sdk,注意下载版本为Windows Offline Installation的SDK,同时最好下载J2SE 1.4.2 Documenta

Tomcat下JSP、Servlet和JavaBean环境配置

经常看到Jsp的初学者问tomcat下如何配置jsp.servlet和bean的问题,于是总结了一下如何tomcat下配置jsp.servlet和ben,希望对那些初学者有所帮助. 第一步:下载j2sdk和tomcat:到sun官方站点([url]http://java.sun.com/j2se/1.4.2/download.html[/url])下载j2sdk,注意下载版本为Windows Offline Installation的SDK,同时最好下载J2SE 1.4.2 Documentat

TOMCAT主目录与虚拟目录的配置小结

以下小结使用tomcat5.0.28测试通过,tomcat安装路径为C:\Tomcat 在默认安装后,tomcat的主目录是webapps/root目录,如果我们想改变tomcat的主目录的话可以这样做: 1.打开C:\Tomcat\conf\server.xml,在<host></host>之间加入代码: <Context path="" docBase="E:\tomcatApp\JeasyCMS" debug="0&qu