<p>方法一(简单):</p>
讯享网
通过配置文件配置多数据源,设置primary为master优先,通过@DS注解进行切换
讯享网
方法二:
如果我们的项目需要使用配置类形式去解密数据库密码或者是其他情况,我们可以这样做。
先创建数据源配置类,配置多个数据源,这里我以数据库连接池做示范,可以不采用连接池。
创建一个数据库源的拦截器,在对数据库源进行切换的时候,直接使用这个类的方法就可以
讯享网
当然拦截器还需要重写 AbstractRoutingDataSource 中的 determineCurrentLookupKey 方法,这个方法用于确定当前使用的数据源。具体的数据源类型我们设置为 DataSourceContextHolder.getDataSourceType() 方法返回,由自己设置的拦截器数据源。
DynamicDataSourceConfig 类负责将主数据源和从数据源组合成一个动态数据源,并配置 MyBatis 的 SqlSessionFactory 和事务管理器,实现多数据源的动态切换。
讯享网
这样就算配置好了,我们可以在impl实现类中设置数据源和清除数据源

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/194155.html