出于安全原因,我们的遗留应用程序分为2个Web应用程序,一个应用程序用于前端,另一个用于业务逻辑和数据库交互,即中间层。 我正在使用Spring MVC和JSTL重新设计这个应用程序。教程示例适用于1个应用程序。
如何在单独的战争中配置使用JSP的Spring应用程序?
答案 0 :(得分:1)
两个主要选项:
我不清楚为什么业务逻辑和数据库交互需要是一个单独的 web 应用程序,而不是库。如果它们被部署在同一台服务器上,那就更不清楚了。
如果它们被部署在不同的服务器上,那么您基本上就是从“前端”应用程序向“API”应用程序进行服务调用。有很多方法可以做到这一点,甚至可能是EJB-ish,尽管如果你使用的是Spring,我怀疑你是在试图避免这种情况(尽管使用JEE6,原因要少得多)。
答案 1 :(得分:0)
Dave建议的第一个选项也是我们通常采用的方式:创建一个Maven multi-module project,其中业务服务构建为Web层所依赖的简单jar文件。通过这种方式,您可以在两个层之间实现清晰的分离,并可能使用不同的“顶部”重用业务逻辑,例如: G。摇摆客户端而不是网络应用程序。
当然,在不使用Maven时也可以这样做 - 您可以将源文件保存在单独的文件夹中,并让Ant(或您喜欢的任何工具)构建可交付成果。
答案 2 :(得分:0)
我会这样走:
使用该架构,您的第一个WAR通过AJAX调用访问第二个WAR服务。这意味着强烈使用JavaScript:也许你可以使用JQuery来帮助你。
此外,该方法允许您在不同的容器中部署WAR。甚至第一个WAR根本不是WAR,它甚至可以是部署在Apache或纯HTML / JS网页中的PHP应用程序。