MyBatis 3.5.4源码之旅
MyBatis 3.5.4源码之旅
王伟王胖胖
这个作者很懒,什么都没留下…
展开
-
MyBatis 3.5.4源码之旅十一之insert案例分析五
MyBatis 3.5.4源码之旅十一之insert案例分析五RoutingStatementHandler的updatePreparedStatementHandler的updateRoutingStatementHandler的updatePreparedStatementHandler的update老样子,跟进去,发现里面都是委托预处理器:貌似到了主要点了:这个其实前面的代理...原创 2020-04-03 21:59:43 · 211 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅十之insert案例分析四
MyBatis 3.5.4源码之旅十之insert案例分析四RoutingStatementHandler的prepareBaseStatementHandler的preparePreparedStatementHandler的instantiateStatementRoutingStatementHandler的parameterizeDefaultParameterHandler的setPar...原创 2020-04-03 21:27:36 · 233 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅九之insert案例分析三
MyBatis 3.5.4源码之旅九之insert案例分析三SimpleExecutor的prepareStatement做了什么BaseExecutor的getConnection获取连接PooledDataSource的popConnection弹出一个连接SimpleExecutor的prepareStatement做了什么获取连接,准备数据,然后处理Statement 。 priv...原创 2020-04-03 17:26:14 · 224 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅八之insert案例分析二
MyBatis 3.5.4源码之旅八之insert案例分析二MapperProxy的invoke做了什么MapperMethod的executeDefaultSqlSession的insertDefaultSqlSession的updateCachingExecutor的updateSimpleExecutor的updateSimpleExecutor的doUpdateConfiguration的...原创 2020-04-03 17:11:46 · 319 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅一之初始化流程一
MyBatis史上最详细源码解读系列一前言初始化流程初始化的问题1.如何读入配置文件2.SqlSessionFactoryBuilder的build构造方法做了什么创建XMLConfigBuilder创建ConfigurationXMLConfigBuilder解析xml文档对象解析设置解析别名前言mybatis是什么,跟传统的JDBC,HIBERNATE之间有什么优点这种我就不说了,我还是分...原创 2019-12-24 16:54:25 · 567 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅二之初始化流程二
MyBatis 3.5.4源码解析二之初始化流程二XMLConfigBuilder的parseXMLConfigBuilder的parseConfiguration解析配置文件XMLConfigBuilder的settingsAsProperties解析设置配置XMLConfigBuilder的typeAliasesElement解析别名XMLConfigBuilder的parse接下去就是最...原创 2020-04-03 14:50:53 · 307 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅三之mapper映射文件解析一
MyBatis史上最详细源码解读系列二XMLConfigBuilder解析xml文档对象解析映射如何获取sqlSession对象XMLConfigBuilder解析xml文档对象解析映射最后我们在解析映射说下,这个很重要,我们的映射配置解析就是在这里做的,包含了4种情况,其实都差不多的:private void mapperElement(XNode parent) throws Exce...原创 2019-12-24 16:54:30 · 372 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅四之mapper映射文件解析二
MyBatis 3.5.4源码之旅四之mapper映射文件解析二XMLStatementBuilder的parseStatementNode解析sql语句MapperAnnotationBuilder的parseStatement解析方法上的注解MapperAnnotationBuilder的getSqlSourceFromAnnotations解析方法上的注解MapperAnnotationBu...原创 2020-04-03 16:16:43 · 484 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅五之获取sqlSession对象
MyBatis 3.5.4源码之旅五之获取sqlSession对象如何获取sqlSession对象DefaultSqlSessionFactory的openSessionFromDataSourceConfiguration的newExecutor如何获取接口映射接口对象MapperRegistry的getMapper如何获取sqlSession对象就是下面简单一句,我们来看看:sqlSes...原创 2020-04-03 16:30:37 · 440 阅读 · 0 评论 -
MyBatis 3.5.4源码之旅六之sqlSession手动提交事务
MyBatis史上最详细源码解读系列三如何进行事务提交关闭sqlSession的时候做了什么如何进行事务提交mybatis默认是手动提交的,所以我们可以用sqlSession.commit();来进行提交,看看里面的实现: @Override public void commit() { commit(false); }里面的参数就是是否强制提交。 @Override...原创 2019-12-24 18:09:27 · 4105 阅读 · 1 评论 -
MyBatis 3.5.4源码之旅七之insert案例分析一
MyBatis史上最详细源码解读系列四insert案例分析insert如何执行cachedInvoker(proxy, method, args)做了什么methodCache.computeIfAbsent做了什么PlainMethodInvoker对象MapperMethod对象SqlCommand对象MethodSignature对象invoke(proxy, method, args, s...原创 2019-12-25 19:12:25 · 989 阅读 · 0 评论