java CLASS / JSP文件在运行部署

时间:2009-01-21 21:17:33

标签: jsp java-ee ibatis

Oracle 10g Application Server,Java 1.5 + JSF(表示层)+ iBatis(数据库通信层)

在我工作的地方,有时会增加对部署目录进行小调整的必要性。我并不否认这不是最好的做法(如果我在这个网站上留下足够长的时间,也许我会最终得到最糟糕做法的例子 - 但它也有好的方面:)

因此,我们调整的三个基本内容是:

  • 重新编译的Java类文件
  • 修改了JSP的
  • 修改了XML格式的iBatis查询“maps”

例如,当报告错误,并且客户端急于继续纠正时,我们对java文件进行更正,重新编译该类,并将生成的.CLASS文件复制到旧版本的任何位置在部署期间放置。同样,我们覆盖修改后的JSP(我认为应用服务器神奇地理解新JSP何时到达,并根据需要重新编译)。

在上述两种情况下,作为预防措施,我们还会重新启动Application Server。我从来没有试过看看更改是否可以在没有重新启动的情况下工作 - 如果服务器以某种方式将类/ JSP缓存在内存中就不会这样了。所以,这是我的第一个问题 - 类/ JSP文件中的更改是应用程序服务器跟踪?也许没有必要重启?

对于iBatis XML,我们已经看到新查询来自更新的XML,并且不需要重新启动。尽管如此,有时在取消部署时,我们已经看到一些XML文件保持锁定状态,这意味着iBatis会缓存一些内容(不确定是什么)。

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

1 个答案:

答案 0 :(得分:1)

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