存储库层作为webservice使用者

时间:2016-11-10 07:24:09

标签: java spring model-view-controller repository-pattern

我目前正在我的公司设计应用程序架构。 作为后端,我计划使用Spring Boot。 我的后端必须从Tibco AMX调用一些wbeservices并将它们作为其他服务(可能是REST)公开我们的模型。

我想在这种情况下使用最流行的图层堆栈:

+-------------------+    +-------------------+    +-------------------+
|                   |    |                   |    |                   |
|    Controller     |    |   Service         |    |  Repository       |
|    DTO Model      <---->   Domain Model    <---->  Entity           |
|                   |    |                   |    |  SOAP/REST CLIENT |
|                   |    |                   |    |                   |
+-------------------+    +-------------------+    +---------+---------+
                                                            |
                                                            |
                                                  +---------v---------+
                                                  |                   |
                                                  |   SOAP            |
                                                  |   Service         |
                                                  |                   |
                                                  +-------------------+

因此,我的控制器将在服务层公开从域模型转换的DTO。

但是我对如何处理Repository存在一些困境?:

  1. 我想要这个图层吗?也许服务可以使用SOAP服务并将其转换为DTO?

  2. 如果我使用Repository,它应该公开SOAP服务模型(从WSDL / XSD生成)还是应该公开从SOAP模型转换的自己的存储库模型? - &GT;这种方法让我可以扩展存储库层实现,而不会对服务和上层产生任何影响,并且只允许我更改存储库接口实现。

  3. 我会感激任何一个adivce。也许这种情况有一些好的/最好的做法(我无法找到)。

0 个答案:

没有答案