如何在春季创建多Web模块应用程序?

时间:2018-09-18 10:34:50

标签: java spring maven spring-mvc

我正在尝试在春季创建一个多Web模块应用程序。下面是项目结构。

+-- Parent
|---- Java (Which has the controller, models and views)
|---- resources
|---- webapp
|------ web.xml
|------ jsp 
+-- Purchase (Submodule 1)
|---- Java (Which has the controller, models and views)
|---- resources
|---- webapp
|------ web.xml
|------ jsp 
+-- Sales (Submodule 2)
|---- Java (Which has the controller, models and views)
|---- resources
|---- webapp
|------ web.xml
|------ jsp 

我想将购买(子模块1)和销售(子模块2)构建为单独的jar或war,并将其添加到父级的lib中,然后运行应用程序并以方式访问控制器

localhost:8080/parent
localhost:8080/purchase
localhost:8080/sales

有人可以让我知道春季可用的方法来实现这一目标吗

谢谢!

2 个答案:

答案 0 :(得分:0)

关于每个项目的结构和职责,我建议像这样建模

父母

  • 网络服务(仅控制器和视图,无业务逻辑,委托销售和购买业务逻辑)
  • 销售(销售业务逻辑-没有控制者和视图)
  • 购买(购买业务逻辑-没有控制器和视图)

根据您的特定要求,您可能必须为 utils / 持久性 / 实体添加其他模块。

关于建筑物本身,这里有两个选项,其中使用最广泛的 maven gradle 。它们都支持在父子模块中构造应用程序。它们都支持在另一个子模块中添加子模块的依赖性(因此,您可以在网络服务 sales purchase 的依赖性) >)。

在构建模块之前,maven和gradle都将谨慎构建给定模块的所有必需依赖项(因此可以保证在构建之前先构建 sales purchase 网络服务)。如果maven和gradle无法满足依赖关系,它们都将使构建失败。

答案 1 :(得分:0)

我认为这与您使用的Web服务器有关。只需为它们设置不同的上下文根。你应该看看这个答案 https://stackoverflow.com/a/32008624/7541163