我正在努力创建一个网络应用程序。同时,我还在开发一个将使用相同代码库的 REST Web 服务......我想知道的是,我能否在服务器功能上创建相同的代码库作为 Web 应用程序和 Web 服务的基础。(在 Web 应用程序中,用户可以登录并执行操作,而 Web 服务就像一个 API)。
还是我需要为 Web 应用程序和 Web 服务保留 2 个不同的代码库?
另外,我希望同一个 Web 应用程序同时充当 Web 服务的生产者和消费者……这可能吗?
您可以这样做,但这意味着您必须将两者部署在一起。这可能并不总是可取的。
另一种方法是将公共类重构到第三个项目中,将它们从应用程序和服务中删除。将它们打包到您添加到 REST 服务和应用程序的 JAR 中,就像您添加任何其他 3rd 方 JAR 一样。如果你这样做,你可以独立部署两者。成本是维护公共类。
是的你可以。技术上,REST API 与 Web 应用程序的服务器端相同。
但是,如果您的 REST API 被第三方访问,您可能希望对您的 Web 应用程序采用不同的版本控制策略,因此对于任何规模较大的东西,我可能会将它们分开。
抱歉不能谈论问题的生产者/消费者部分。不明白问题的那一部分。
是的,你可以从一个代码库做这两件事.. 应用程序和 Web 服务,完整的游戏将围绕 URL,即应用程序 URL 和 Web 服务 URL。
是的,同一个网络应用程序可以同时充当生产者和消费者。