我需要创建一个由多个模块组成的应用程序:
将来可能会有其他模块。每个模块都是一个独立的 Restful Spring + hibernate 应用程序(war文件)。
模块应该相互交互。也就是说,例如,主模块使用模块目录中的引用。
问题是,这些自治模块之间的交互实践是什么?
答案 0 :(得分:1)
这是一个博客,用于Tomcat中的Webapp Inter-Communication:
https://blog.konstantinpavlov.net/2014/05/09/webapp-inter-communication-in-tomcat/
答案 1 :(得分:1)
现在,如果他们是依赖模块, 最好的做法是取出一个包含每个模块共有代码的通用模块,然后将单独的模块与依赖于公共模块的单独模块放在一起。
但正如我从您的问题中了解到的,我认为您需要制作能够帮助与不同模块交互的VO。 VO可能是模块间互通的一种契约。
此外,由于您在Rest中构建应用程序,VO(值对象)将让您高效,轻松地进行通信。
答案 2 :(得分:1)
一般来说:JMS是一种选择。 将有队列/主题,生产者将发布消息,而听取队列/主题的消费者将对消息做出反应。 使用JMS可以很好地完成不同模块或应用程序之间的同步。 这里解释了JMS apis。 http://docs.oracle.com/javaee/6/tutorial/doc/bnceh.html 请注意,您需要一个JMS提供程序(实现)。
但这实际上取决于应用程序要求,环境等。
对我来说,很难理解你所描述的背景。