我正在Spring boot中开发服务。
所以我想说我有2项服务 - A,B。
服务A有一个API A1(),它返回一些类customObject说
class CustomObject{
int id;
String name;
.... +n more properties
}
因此,从我的API,我返回CustomObject的对象,并从我的API返回相应的JSON。(使用@RestController)
现在服务B正在调用此API。所以它调用服务A的A1()api(使用RestTemplate / Feign Client),获取JSON,现在访问它,我必须在服务B中创建CustomObject以将JSON映射到Object。
这就是问题所在。我不希望我的服务相互依赖,但是这两个服务都创建了customObject。如果对服务A中的CustomObject进行了任何更改,则需要在服务B中包含相同的更改。
那应该是更好的解决方案呢?
答案 0 :(得分:0)
创建简单项目,收集您的DTO课程。把它推到你的maven repo(例如nexus)。然后将其添加到每个项目中的依赖项。
答案 1 :(得分:0)
以下是模式,我们遵循:
serviceA
|_ serviceA-model (CustomObject goes here)
|_ serviceA-service
serviceB
|_ serviceB-model
|_ serviceB-service
serviceB
项目导入serviceA-model
。它帮助我们避免了大量的代码重复。