从零开发分布式数据库中间件 二、构建MyBatis的读写分离数据库中间件

  在上一节  从零开发分布式数据库中间件 一、读写分离的数据库中间件 中,我们讲了如何通过ThreadLocal来指定每次访问的数据源,并通过jdbc的连接方式来切换数据源,那么这一节我们使用我们常用的数据库持久层框架MyBatis来实现数据库读写分离。

一、数据源代理:

此类与上一节相似,即可以指定当前线程访问的数据源。

package com.happyheng.datasource;/*** 数据源代理设置* Created by happyheng on 17/1/15.*/
public class DataSourceProxy {private static ThreadLocal threadLocal = new ThreadLocal<>();public enum DataSourceEnum {MASTER,SLAVE}/*** 为当前线程设置数据源*/public static void setDataSource(DataSourceEnum sourceEnum) {threadLocal.set(sourceEnum);}public static DataSourceEnum getDataSource() {return threadLocal.get();}}

二、数据源Map:

  首先我们需要将我们的读写数据源都写入到配置文件中,


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部