我的公司正在创建多个 Web 应用程序,这些应用程序在功能上有一些重叠。我想将通用功能开发为一个单独的项目,并且由于它将由网页和托管 bean 组成,因此我假设该项目需要位于其自己的 .war 文件中。然后我可能会在 .ear 文件中部署两个(或更多)Web 应用程序。在网上做一些初步研究让我不确定 Web 应用程序如何协同工作。我是否能够在托管 bean 之间共享数据并将用户从一个 Web 应用程序内的页面引导到另一个 Web 应用程序?是使我的应用程序可维护的正确方法还是有更好的方法来分解项目?
问问题
1940 次
2 回答
1
这是一种矫枉过正,但是:
您可以将应用程序的功能拆分为数据库、业务逻辑和表示 /web/ 层;“重叠”功能可以用于业务和数据库层。
Web 前端必须通过 corba、REST/LESS、soap 或替代方案与业务层对话,具体取决于您在第 2 层 /business/ 中拥有的连接器;
有关更多信息,请参阅此图
或谷歌 3 层架构
我的公司几年前也遇到过同样的问题,他们最终部署了多个应用程序/一些业务逻辑重复是不可避免的/
现在,我们通过创建一个通用的、开放的、业务层服务层来重新发明轮子,该服务层可以通过 web 服务调用,并且部门内任何地方的其他应用程序/脚本都可以访问该服务层;
于 2012-05-31T20:44:42.570 回答
0
将所有 WAR 文件包装到 EAR 文件中。并将库文件放入 EAR 中,以便所有 WAR 文件可以共享。
于 2012-09-07T04:26:15.167 回答