我应该将微服务的外部客户端DTO存储在哪里?

时间:2019-10-04 12:34:46

标签: java spring-boot architecture microservices dto

我对正在开发的应用程序的体系结构有疑问。 它是通过以下模块构建的:

module-app
module-domain
module-rest
module-rest-api
module-rest-client

module-rest-api中存储控制器的DTO。但是现在我必须添加其他DTO来呼叫外部客户端。

问题是,我必须在module-rest-api内还是external client package内到module-app内实现那些外部DTO?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

这里没有一个答案,因为您放置这些DTO的位置很大程度上取决于个人喜好。

例如,您可以有一个模块-dto。在module-dto中,您可以拥有许多软件包,并按用途划分它们,例如

com.mycompany.project.dto.outbound.   //for external requests
com.mycompany.project.dto.inbound.    //for incoming api requests

这样,您可以将dto模块导入任何地方。出于这个原因,我一直将DTO保持为独立模块,因此我可以随时随地使用它。