![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mybatis
505505
这个作者很懒,什么都没留下…
展开
-
mybatis源码分析1 - 框架
1 源码结构我们分析的mybatis源码version为3.4.5,mybaits-spring源码version为2.0.0-SNAPSHOT。先看mybatis的源码目录结构,如下图所示。我们只用看src/main/java下的目录即可。annotations:注解定义,我们知道mybatis配置可以采用XML文件形式,也可以采用注解形式binding:主要是mapper动态代理绑定相关的类,...转载 2018-04-16 16:56:51 · 170 阅读 · 0 评论 -
mybatis源码分析2 - SqlSessionFactory的创建
1 主要类初始化mybatis的过程,其实就是创建SqlSessionFactory单例的过程。下面是一个简单的初始化例子。String resource = "main/resources/SqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);SqlSessionFactory ...转载 2018-04-16 16:58:09 · 438 阅读 · 0 评论 -
mybatis源码分析3 - sqlSession的创建
1 引言和主要类初始化mybatis,也就是创建完单例SqlSessionFactory后,就进入到了mybatis的运行阶段。mybatis每次的运行都是通过SqlSession对象来进行,它是运行时的核心。不同于SqlSessionFactory,SqlSession不是线程安全的,故一般建议放在局部作用域中定义, 且使用完后close掉。我们使用mybatis创建SqlSession十分简单...转载 2018-04-16 16:59:10 · 164 阅读 · 0 评论 -
mybatis源码分析4 - sqlSession读写数据库完全解析
1 引言和主要类创建完sqlSession实例后,我们就可以进行数据库操作了。比如通过selectOne()方法查询数据库,如代码// 读取XML配置文件String resource = "main/resources/SqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);//...转载 2018-04-16 17:00:26 · 197 阅读 · 0 评论 -
mybatis源码分析5 - mapper读写数据库完全解析
1 引言和主要类上一节讲解了sqlSession读写数据库的整个流程和四大组件的执行过程,相信大家对mybatis操作数据库有了一定的了解。上一节还提到过,其实我们还可以通过mapper方式读写数据库,并且mybatis建议使用mapper方式,而不是直接通过sqlSession的selectList update等方法。使用mapper方式的例子如下// 读取XML配置文件String res...转载 2018-04-16 17:01:37 · 168 阅读 · 0 评论 -
mybatis源码分析6 - mybatis-spring容器初始化
1 引言使用 MyBatis-Spring 模块,我们可以在Spring中使用mybatis,让Spring容器来管理sqlSessionFactory单例的创建。如以下代码<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!--指定数据源,不用再在mybatis的X...转载 2018-04-16 17:02:36 · 137 阅读 · 0 评论 -
mybatis源码分析7 - mybatis-spring读写数据库全过程
1 引言mybatis-spring中,我们利用Spring容器注入的方式创建了sqlSessionFactory,从而完成了mybatis的初始化。那么如何来读写数据库呢?最简单的方式是,和mybatis中一样,利用sqlSessionFactory的openSession来创建sqlSession,然后利用它来select或update,或者mapper方式。这种方式每次都需要手动openSe...转载 2018-04-16 17:03:30 · 178 阅读 · 0 评论