运行部署时的java类/JSP文件

运行部署时的java类/JSP文件,jsp,jakarta-ee,ibatis,Jsp,Jakarta Ee,Ibatis,Oracle 10g应用服务器,Java 1.5+JSF(表示层)+iBatis(数据库通信层) 在我目前工作的地方,有时需要对部署目录进行一些小的调整。我不否认这不是最好的做法(如果我在这个网站停留足够长的时间,也许我最终会成为最坏做法的例子——但也有好的一面:) 因此,我们调整的三个基本方面是: 重新编译的Java类文件 修改JSP的 以XML格式修改iBatis查询“映射” 例如,当一个bug被报告时,客户机急切地想继续纠正它,我们会对java文件进行纠正,重新编译类,并将生成的.cl

Oracle 10g应用服务器,Java 1.5+JSF(表示层)+iBatis(数据库通信层)

在我目前工作的地方,有时需要对部署目录进行一些小的调整。我不否认这不是最好的做法(如果我在这个网站停留足够长的时间,也许我最终会成为最坏做法的例子——但也有好的一面:)

因此,我们调整的三个基本方面是:

  • 重新编译的Java类文件
  • 修改JSP的
  • 以XML格式修改iBatis查询“映射”
例如,当一个bug被报告时,客户机急切地想继续纠正它,我们会对java文件进行纠正,重新编译类,并将生成的.class文件复制到部署期间放置旧版本的地方。同样,我们覆盖修改过的JSP(我假设应用服务器神奇地理解新JSP何时到达,并根据需要重新编译)

在上述两种情况下,作为预防措施,我们还重新启动应用程序服务器。我从未尝试过在不重新启动的情况下查看更改是否有效-如果服务器以某种方式将类/JSP缓存在内存中,则不会出现这种情况。。所以,这是我的第一个问题——类/JSP文件中的更改是否由应用服务器跟踪?也许不需要重新启动

对于iBATISXML,我们已经看到新的查询是从更新的XML中获取的,不需要重新启动。不过,有时在取消部署时,我们会看到一些XML文件保持锁定,这意味着iBatis缓存了一些东西(不确定是什么)


我想知道,从长远来看,这些调整会如何影响系统的稳定性?除了我们之外,这里的其他人也做过类似的事情吗?

我们的生产服务器上有ApacheTomcat,JSP可以毫无问题地更换,服务器无需重新启动即可读取新页面。 像.properties、ibatis.xml、.class这样的文件不能以这种方式使用,据我所知,这需要在Tomcat上重新启动