首页
沸点
课程
APP
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
shardingsphere
订阅
豪森布鲁斯王
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
ShardingJDBC源码阅读(十一)事务与SpringAOP
本章学习ShardingJDBC事务原理。 LOCAL:本地,不支持分布式事务。 XA:XA事务,两阶段提交,强一致。默认使用atomikos框架实现。 BASE:BASE柔性事务,最终一致,使用Seata实现。 本地事务,在用户执行ShardingConnection.set…
ShardingJDBC源码阅读(十)数据脱敏实战
本章基于shardingsphere数据加密实现原理的官方文档,根据迁移前、迁移中、迁移后三个阶段,观察sql执行的变化,深入源码分析其中的原理。 根据user_id%2分库,根据user_id%4/2分表。也就是user_id=1分配到ds_1.my_user_0;user_…
ShardingJDBC源码阅读(九)结果合并(下)
本章继续分析ShardingJDBC的核心步骤:结果合并。 ResultProcessEngine结果处理引擎,是个标记接口,继承OrderAware接口(SPI相关)。 它有两个子接口:ResultMergerEngine、ResultDecoratorEngine。 Res…
ShardingJDBC源码阅读(八)结果合并(上)
本章分析ShardingJDBC的核心步骤:结果合并。 QueryResult是对java.sql.ResultSet的封装,提供了和ResultSet一样的next方法,其他方法看名字也很容易理解。 重点看一下QueryResult的两个实现。 MemoryQueryResu…
ShardingJDBC源码阅读(七)执行
本章分析ShardingJDBC的核心步骤:执行。 回到ShardingPreparedStatement的execute方法。 ShardingPreparedStatement#initPreparedStatementExecutor创建Connection和Statem…
ShardingJDBC源码阅读(六)重写
本章分析ShardingJDBC的核心步骤:重写。 回到BasePrepareEngine#prepare,经过路由处理后最终得到RouteContext,进入executeRewrite重写流程。 1. 注册SQLRewriteContextDecorator到SQLRewr…
ShardingJDBC源码阅读(五)路由(下)
本章继续分析ShardingJDBC的核心步骤:路由。 ShardingRouteEngineFactory路由引擎工厂。 ShardingStrategy分片策略。 ShardingRouteDecorator的decorate方法是路由的核心流程。 ShardingRout…
ShardingJDBC源码阅读(四)路由(上)
本章分析ShardingJDBC的核心步骤:路由。 回到DataNodeRouter的executeRoute方法,此时已经完成SQL解析工作,createRouteContext方法构造的RouteContext中包含SQLStatementContext、params(参数…
ShardingJDBC源码阅读(三)解析
本章从一个select语句的执行,进入sharding-jdbc的第一步解析。 ShardingDataSource通过构造方法创建ShardingConnection。 ShardingConnection构造方法。 ShardingConnection的继承关系与Shard…
ShardingJDBC源码阅读(二)创建ShardingDataSource
众所周知,对于数据库的操作离不开几个类,Datasource、Connection、Statement、ResultSet。 本章关注ShardingDataSource的创建。 org.apache.shardingsphere.shardingjdbc.api.Shardi…