java – 微服务和jpa

我喜欢微服务的想法,并认为我理解基本的想法.

我想制作一个微服务系统,其中每个服务都是一个单独的spring-boot项目.
例如,有两个服务,Service-A和Service-B. B有一些JPA实体,A使用RestTemplate向B发出请求.

RestTemplate.getForObject(…)需要它应该返回的类类型.因此,我还必须在Service-A(单独项目)中包含实体类,或者是否有更好的方法将实体的值发送到其他服务.

我希望我的确解释得很好.

最佳答案 我已经看到两种方法来处理这个:

1)定义共享复杂类型的公共库 – 您有一个服务A的项目和一个服务B的项目,您还需要一个lib-alpha项目,也许需要另一个lib-beta项目等.这将是一个Java实现多个服务可以利用的特定于域的复杂类型

2)制作一个记录良好的API并让消费者自己照顾自己 – 这通常涉及定义一个高级数据编码方案(使用XML,JSON等)并在发送所需的数据之前在服务A中序列化数据API提供程序然后在收到时反序列化它

点赞