采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
不同的服务,折分不同的数据库后,join表,和外键引用这些怎么处理呀?
1、设计阶段就应该避免服务之间会相互有表关系的依赖。
2、尽量把关联关系写在代码逻辑中代替join连接,易于扩展和维护。
谢谢回复,如何用代码代替JOIN呢,可以说下吗
比如你原业务是用SQL来实现A表通过字段cid来join B表,现在用代码逻辑来实现就应该查询A对象所有记录存入List集合,然后遍历List集合取每个对象中的cid字段来查询B对象再把AB对象的字段存入一个map或者C对象。当然在一个循环中写dao层的查询是不对的这样会增加对数据库的访问,应该根本具体业务做优化尽量减少对数据库的操作。
我来总结下吧。拆了之后,join肯定不会像原生sql那么简单了,可以把join理解为组装数据。 “不同的服务,折分不同的数据库后”这个说得有点笼统,可以具体到某个业务来说。如果只是单纯的拆成2个库,服务还是一个,那么可以考虑一个服务连2个数据库,这组装数据就方便了,没有跨服务。 如果是拆分成2个服务,比如课程里的订单和商品服务,那么就只能通过接口来调用。
登录后可查看更多问答,登录/注册
SpringCloud组件实现微服务,【已升级Finchley.Release】
2.0k 3
2.7k 6
2.4k 7
1.6k 25
3.0k 24