java - 微服务间如何共享实体类?

 

问题描述:

微服务AppCity,实体类City城市
微服务AppCountry,实体类Country国家

在AppCountry的Service层中写一个接口

package org.foo.bar.country.service;

@FeignClient(略)
public interface CityService{
    // CommonResponse是自定义的响应类
    CommonResponse<City> getCityInCountry(City condition);
}

那这个City应该放在哪,所有的微服务都把自己的实体类放在common模块中不太合适吧,那这两个微服务之间怎么传递这个City呢?DTO和Converter又该怎么写


 

第 1 个答案:

可以写成一个共享模块 打成Jar包 哪里需要这个共享模块里的实体类就哪里引入就行了


 

第 2 个答案:

创一个通用的微服务放入实体类,引入到微服务AppCity和微服务AppCountry中,就能共用了


 

第 3 个答案:

新建一个包 org.foo.bar.country.domain;
共享的实体都放在里面。


 

第 4 个答案:

如果多个微服务需要使用同一个实体类,比如City,那么最好的做法是将这个实体类定义在一个独立的库(library)中,然后让这些微服务依赖这个库。

说白了就是自有三方库.


请问在TypeScript中,class Teacher { ...}我们定义一个类的时候,这个类是否也是type呢? 比如我们:类型注解的时候,可以注释为Tea ...