Appearance
14 多法人使用
LIBRA支持多法人的访问机制,整体机制如下图所示,核心思路是每个法人对应LIBRA内部的一个schema(逻辑库),每一个schema对应的数据库进行物理分离,以保证各个法人数据的安全性及独立性。当然,如果业务系统自身已经考虑法人的问题,例如,在数据库中的每个表中都增加了法人的字段,并且每次交易访问的时候都上述法人信息。这种情况可以理解为多法人的支持已经在业务层面支持,LIBRA将不再考虑。
如果需要借助LIBRA来实现多法人的功能,需要业务端进行配合,建议在业务框架进行统一控制,具体如下:
- 框架级需要依据请求上送的法人,对执行的SQL进行加工,增加注解,例如:
sql
/*!dble:schema = test_01 */
select col1,col2 from table
- 处理的位置有如下几种选择:
框架调用JDBC的统一入口,对SQL进行加工;
利用mybatis的拦截机制进行SQL加工(推荐);
框架自己拦截处理。