我需要创建 2 个部署在 tomcat 服务器上的 war 应用程序。 其中一个应用程序与另一个应用程序具有完全相同的逻辑和代码,但对 View 和 Controller 进行了更改。
然后 App1 和 App2 将具有相同的代码来访问数据,我不想重复代码。 我的想法是创建 2 个 WAR,这些 WAR 文件应该使用可以访问数据库的库或其他项目(我不知道)。
哪种解决方案的性能最好?
最佳答案
选项 1
如果您正在共享代码(这是一大段代码,上传 war 文件时会让您发疯),可以选择创建一个包含代码的 jar 并将 jar 文件添加到 tomcats 库文件夹,这是
${CATALINA_BASE}/lib/
请注意,这通常不是您想轻而易举地做的事情,因为该 jar 文件将可用于 tomcat 上的所有 war 文件,从而产生可能的命名空间问题。
选项 2
如果与应用程序服务器上的所有项目共享代码不是一个选项,您必须将 jar 文件添加到项目并将其添加到它的类路径中(如果您添加 jar,这会在 eclipse 中自动发生进入
${PROJECT_ROOT}/WebContent/WEB-INF/lib).
在性能方面,这并没有什么区别,因为 tomcat 将加载类文件,这些文件不是很大。实例可能是,但部署类型并没有真正对实例产生影响。
关于java - 2 war 共享代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14683717/