问题描述
在tomcat里面配置了连接池<!-- tomcat 6.0 datasource begin--><Context path="/TestWebProject2" docBase="TestWebProject2" debug="0" reloadable="true" crossContext="true"> <Resource name="jdbc/my" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" maxIdle="20" maxWait="5000" username="root" password="123123" url="jdbc:mysql://localhost:3306/test" maxActive="100" removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"/></Context>有这一句reloadable="true" 但是为什么我只要一改java文件里面的一点点东西,整个工程都要重新加载,跟tomcat重启一样。我记得以前用发布的的方法不用每次都重启,只有修改xml的时候才会重新加载或要重启,现在怎么改一个类都要重启或重新加载?请指教 问题补充:reloadable="true" 如果不设置我发现就不会重新加载,但是这样能保证它即时编译过去么?
解决方案
设置reloadable="true"后,tomcat会持续监测Javabean,一旦发现Javabean源文件改动,服务器立即重启。
解决方案二:
我的理解:java类文件的servlet部分是靠 tomcat也就是servlet引擎来编译的。java普通的bean文件是jdk来编译的,但是如何确定呢,那么只有监视所有的类文件,如果有修改就整个重新编译,这样以防万一吗
解决方案三:
设置为FALSE
解决方案四:
补充一下,除了修改方法签名会导致热交换失败,卡在断点上的也过不去
解决方案五:
引用reloadable="true" 如果不设置我发现就不会重新加载,但是这样能保证它即时编译过去么? 是可以的! 右键你的项目 刷新 下 就ok!eclipse 默认是自动编译的! 你可以看下 project ---building auto。。。
解决方案六:
reloadable="false" 不知道为啥。。。另外不能改方法签名