修改JSP页面为什么不用重启Tomcat

JSP->servlet->.clsss

JSP最终要转换为class文件,为什么tomcat在修改java代码的必须先重启tomcat,反而JSP不用。?

在Tomcat的Conf/web.xml文件中,可以对Tomcat的这种对JSP修改的机制进行修改。

这是因为Tomcat对JSP进入了侦听,如果有修改,就会重新翻译成Servlet并最终编译成Class文件,替换掉原JSP页面对应的Class文件。Tomcat的内部机制是可以让这种Class文件立即生效的。而普通的Class文件修改后,不能立即生效。

Java代码  

  1. <!--   modificationTestInterval                                           -->
  2. <!--                       Causes a JSP (and its dependent files) to not  -->
  3. <!--                       be checked for modification during the         -->
  4. <!--                       specified time interval (in seconds) from the  -->
  5. <!--                       last time the JSP was checked for              -->
  6. <!--                       modification. A value of 0 will cause the JSP  -->
  7. <!--                       to be checked on every access.                 -->
  8. <!--                       Used in development mode only. [4]             -->

在“development”(开发模式)下,可以使用modificationTestInterval来设置Tomcat检查JSP更新的时间间隔,单位为秒,默认4秒

Java代码  

  1. <!--   checkInterval       If development is false and checkInterval is   -->
  2. <!--                       greater than zero, background compilations are -->
  3. <!--                       enabled. checkInterval is the time in seconds  -->
  4. <!--                       between checks to see if a JSP page (and its   -->
  5. <!--                       dependent files) needs to  be recompiled. [0]  -->

在非“development”模式下,使用checkInterval来设置Tomcat检查JSP更新的时间间隔,单位为秒,默认为不检查。

对于上面提到的“development”模式,也是在web.xml文件中配置的,如下

Java代码  

  1. <!--   development         Is Jasper used in development mode? If true,   -->
  2. <!--                       the frequency at which JSPs are checked for    -->
  3. <!--                       modification may be specified via the          -->
  4. <!--                       modificationTestInterval parameter. [true]     -->

默认情况下Tomcat使用“development” 模式。

时间: 2024-10-05 04:19:15

修改JSP页面为什么不用重启Tomcat的相关文章

修改 jsp 和 java 不重启 tomcat

========================1============================== 可以修改类不用重启Tomcat加载整个项目(手工启动) 配置reloadable=true(自动重载) 使用Debug模式,前提是仅限于局部修改.(修改类不用重启--热加载) Tomcat轻小,而WebLogic.WebSphere对硬件要求比较高,吃内存.耗CUP.JBoss类更改不会重启(传说,我没用过,不知道!). 在使用Eclipse+Tomcat开发Java项目的时候常常会碰

用jrebel实现 jvm热部署,修改类不用重启tomcat

我们用eclipse开发时经常遇到一个麻烦的问题是修改类文件后需重启tomcat才能生效,即使使用一些tomcat插件,有时修改了方法名或添加了类,也需要重启.使用获得jolt大奖的作品jrebel,就能轻松实现 jvm热部署,无论任何情况修改类都不用重启tomcat 首先,下载jrebel,可到 http://fly-hyp.javaeye.com/blog/350498 ,然后配置eclipse 在启动参数中加入  -noverify -javaagent:d:/youpath/jrebel

修改源代码时不需要重启tomcat服务器

我们在写JSP + Servlet 的时修改了Java代码就要重新启动服务器.十分麻烦. 为了解决这个问题我们可以将服务器改成debug 模式.就是按调试状态这样修改Java代码就不用再重新启动服务器了.只需刷新浏览器即可.可以看下面的图 当然也可以将Tomcat设置为 热启动,修改源代码时也不需要重启tomcat服务器.具体的执行方法我就不写了.大家可以去搜索下热启动的方法. 我用的是Tomcat服务器我就写了Tomcate 的解决方法.以上不足请多指教.

SharePoint自定义程序页面部署 不用重启IIS

SharePoint的部署方式默认是部署WSP包,尤其是有多个前端的时候WSP包的部署显得非常方便和快捷,但是WSP的部署需要重启整个IIS服务会造成SharePoint站点一段时间不能访问.结合自己项目的情况这里我们提出文件对考的方式来替代WSP包的部署.这里有两个地方需要注意: 1. 我们的SharePoint项目不会影响SharePoint内容数据库: 2. IIS不重启,但是SharePoint站点对应的应用程序池会自动回收 这里我们以一个demo来做说明: 如图我们的SharePoin

系统管理模块_部门管理_改进_抽取添加与修改JSP页面中的公共代码_在显示层抽取BaseAction_合并Service层与Dao层

系统管理模块_部门管理_改进1:抽取添加与修改JSP页面中的公共代码 commons.jspf <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <meta http-equiv="Conten

修改源代码时不需要重启tomcat服务器 《转载》

目前在做一个网站项目,使用MyEclipse+Tomcat,每次修改项目源代码时,都需要重启tomcat.重新导出项目到webapps文件夹或者重新部署,太麻烦.于是研究了一下tomcat如何设置成热启动,即修改源代码时不需要重启tomcat服务器.方法如下: 第一步: Tomcat安装目录下,修改 conf/server.xml 中的 Host 配置,设置其reloadable属性为true,即在Host标签中添加reloadable="true"这一句,重启Tomcat使配置文件生

在MyEclipse中修改jsp页面的默认打开方式

在JavaWeb项目中,当然有很多jsp页面,但是我发现,双击打开jsp页面总是卡机,相对于打开其他java文件而言非常慢,感觉很不舒服,MyEclipse中默认打开jsp页面是以可视化的形式展现的,但是大多数情况我们都喜欢以代码方式打开jsp页面. 有两种方式来解决打开jsp页面较慢的问题. 单击选中jsp页面,点击右键---open with  --- MyEclipse JSP Editor  以这种方式打开就非常快不会出现卡机的情况. 但是这种方式每次打开jsp页面时都很繁琐,有没有更好

修改Java文件不用重启Tomcat服务的方法

我们在开发的时候,往往碰到,修改了Java文件,那么Tomcat就会重启,为了提高开发的效率,我们可以修改之后不用全部重启,只是编译修改的文件的部分. 往在开发过程中,修改一些java文件根本是不需要重启服务的,譬如给java类增加注释,增加调试打印语句等. 但是有些修改的内容,必须要重新加载Tomcat才能重新生效,比如修改了代码的结构,新增了方法等.如果不重启,那么就没有效果. 1.修改Tomcat的配置文件,找到service.xml. 修改里面的  reloadable="true&qu

myeclipse更改类或者是配置文件不用重启tomcat的方法

一.修改java代码(如action)无需重启与部署方法 方法1:在WebRoot下的META-INF文件夹中新建一个名为context.xml文件,里面添加如下内容(要区分大小写): <Context reloadable = "true">:</Context> 方法2:在tomact的安装目录的conf文件中找到server.xml这个文件,在 </Host>结点的上面加上 <ContextdocBase="工程物理路径&quo