tomcat 热加载

近期在servlet开发。由于servlet在tomcat中的生命周期问题(请查阅其他文档),导致调试过程很不方便。

修改后的文件,无法在servlet中重新加载(重启tomcat当然可以,效率是个问题),解决方法是采用 热部署 和 热加载,两者在调试过程中各有自己的优缺点。

此处以热加载,描述下tomcat中的配置。

修改文件:apache-tomcat/conf/server.xml

修改内容:标签中添加 如下 标签

以下是我的配置:

<Context debug="0" path="/mytest" docBase="D:/apache-tomcat-8.0.15/webapps/mytest" reloadable="true"/>

其中

debug:表示log中记录异常的控制等级,数值越大,记录越详细。

path:访问目录 此例即 127.0.0.1/mytest/

docBase:项目目录 可以为绝对路径(注意 ‘/’ 方向),也可以为相对路径(相对 webapps ,此例 docBase=”/mytest”)

reloadable:字面意思可看出,是否加载新的class文件,实现热加载。

重启tomcat,完成配置。

时间: 2024-07-31 06:25:52

tomcat 热加载的相关文章

[Eclipse] - 集成Tomcat热加载插件

使用Eclipse + Tomcat,要使用热加载,总是会重启tomcat webapp. 可以使用这个插件:jrebel 如果是Tomcat 7.0+版本,需要使用jrebel5.5.1+的版本,不然总会报一些错误. 使用方法: 1) 下载jrebel 5.5.1+ 2) 右键项目,选择: 3) 找到"VM arguments": 里头填入: -Dcatalina.base="E:\JavaProject\.metadata\.plugins\org.eclipse.wst

java的热部署和热加载

ps:热部署和热加载其实是两个类似但不同的概念,之前理解不深,so,这篇文章重构了下. 一.热部署与热加载 在应用运行的时升级软件,无需重新启动的方式有两种,热部署和热加载. 对于Java应用程序来说,热部署就是在服务器运行时重新部署项目,热加载即在在运行时重新加载class,从而升级应用. 二.实现原理 热加载的实现原理主要依赖java的类加载机制,在实现方式可以概括为在容器启动的时候起一条后台线程,定时的检测类文件的时间戳变化,如果类的时间戳变掉了,则将类重新载入. 对比反射机制,反射是在运

Eclipse tomcat插件禁用热加载

Eclipse中的tomcat插件默认是开户了热加载,只要是修改了java文件一保存,tomcat自动编译.加载.发布,很吃内存. 关闭方法: 打开eclipse,找到server项: 双击打开,修改: 如图保存即可.

Tomcat热部署与热加载!

所谓的热部署与热加载就是两个值:(reloadable='true'与autoDeloy='true') 原文地址:https://www.cnblogs.com/cxm123123form/p/11579251.html

idea开发maven项目热加载

JavaWeb项目,尤其是一些大型项目,在开发过程中,启动项目耗费的时间就不短.大大的拖慢了开发速度!在这分享一种不需要插件就能实现热加载的方法! 默认已经创建好一个Maven项目 点击此按钮 点击 加号 按钮,选择Maven Name随便起名即可,最右边选择要注意选择Maven Model.最下边二个原样写上,点击确定即可! 附带Maven Tomcat插件配置代码 <!-- 配置Tomcat插件 --> <plugin> <groupId>org.apache.to

java热加载

应用服务器一般都支持热部署(Hot Deployment),更新代码时把新编译的确类 替换旧的就行,后面的程序就执行新类中的代码.这也是由各种应用服务器的独 有的类加载器层次实现的.那如何在我们的程序中也实现这种热加载功能呢?即 要在虚拟机不关闭的情况下(比如一个),换个类,JVM 就知道加载这个新类,执 行新类中的逻辑呢?下面就简单演示这样一个热加载的例子,首先大致了解一下 类加载器. 标准 Java 启动器的类加载器层次 1. 引导类加载器(bootstrap): 加载内核 API,如 rt

Java热加载的实现

应用服务器一般都支持热部署或者热加载(Hot Deployment或者Hot Swap),即更新代码保存时把新编译类替换旧的类,后面的程序就执行新类中的代码.这也是由各种应用服务器的独有的类加载器层次实现的. 那如何在我们的程序中也实现这种热加载功能呢? 即要在不重启JVM虚拟机的情况下,换个类,JVM就知道加载这个新类,执行新类中的逻辑. 首先大致了解一下类加载器: 标准 Java 启动器的类加载器层次 1. 引导类加载器(bootstrap):加载内核 API,如 rt.jar(java.l

webpack2 热加载js 文件

如果只要普通的热加载 只要如下配置就好了 package.json { "devDependencies": { "webpack": "^2.6.1", "webpack-dev-server": "^2.4.5" }, "scripts": { "start": "webpack-dev-server" } } webpack.config.j

mybatis热加载的实现

最近在使用mybatis,由于是刚刚开始用,用的并不顺手,目前是感觉有2个地方非常的不好用: 1.mybatis调试不方便 由于dao层只有接口,实现只是一个map的xml文件,想加断点都没有地方加,直接导致的后果就是有时候出错了,完全是各种闭眼尝试,抓狂中...倒是可以把调试级别改成debug,会把执行的sql,以及参数都输出到控制台,可是一改成debug,那控制台输出的内容,就实在多到让人发指,甚至都会影响到代码的编写及调试,而且输出日志跟打断点调试根本就不是一个级别的.目前仍旧无法解决改问