目标:车队SaaS平台
车队管理类似的SaaS平台,从0到1,咱继续..
上一篇说到,客观因素,选择的数据库隔离方案,但作为优秀程序猿,必须支持各种临时场景,能够快速相应,不然会被拉取祭天…
那么现在的产品在沟通、在设计,那优秀的程序猿也要同时做好准备,不然怎么保持流弊与神秘~~
好,话说回来,数据隔离方案既然先定业务字段隔离了,那么咱的框架也得支持多数据源吧,万一哪天某个客户他就是要求自己的数据自己单独隔离呢,是吧,这种有可能的吧,比如我们地推人员,想拉个大客户上来,人家有要求,那必须满足。
(我是后半夜Java,在这分享下经验,那些靠copy的搬运作者,不要随意copy到其他平台了,哪天闲的就去投诉)
上菜:多多指教~~
数据库隔离,对后端程序猿来说,那就是多数据源,多数据在网上也能找到一些方案,一些做法,甚至一些踩过的坑,咱汇集过一些,还是有好的代码。
那么咱(粘贴一代码)也要具备下多数据源的功能支持,
上码:
首先定义下多数据源配置
1 | yaml复制代码##多数据源的配置 |
优美的代码,总有那么几个注解
1 | java复制代码import java.lang.annotation.*; |
配置下多数据源
1 | typescript复制代码 |
数据库链接配置
1 | scss复制代码public class DynamicDataSourceFactory { |
多数据源的支持
1 | typescript复制代码public class DynamicContextHolder { |
最后,统一处理AOP
1 | less复制代码/** |
总结
多数据源的处理,网上很多方法或开源的,都可以直接用,只是从概念上或者思想上,需要去了解下他是怎么运作的。
其他其实不去深入到修改底层源码的需要,基本能用就可以了。
SaaS系统从0到1搭建,下篇继续….
本文转载自: 掘金