mybatis源码分析
文章平均质量分 69
分析mybatis源码与设计
zhen_hong
没个性,不签名
展开
-
1、SqlSessionFactoryBean的创建-1
一、SqlSessionFactoryBean概览与spring进行整合的时候,通常我们会配置以下信息<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"><...原创 2019-08-10 10:36:28 · 5698 阅读 · 0 评论 -
2、SqlSessionFactoryBean的创建-2
接着上一小节的内容a. 处理构造器元素//constructor标签private void processConstructorElement(XNode resultChild, Class<?> resultType, List<ResultMapping> resultMappings) throws Exception { List<XNode...原创 2019-08-10 10:39:04 · 201 阅读 · 0 评论 -
3、SqlSessionFactoryBean的创建-3
回到XMLMapperBuilder的parse方法public void org.apache.ibatis.builder.xml.XMLMapperBuilder.parse() { if (!configuration.isResourceLoaded(resource)) { //解析配置 configurationElement(parser.eval...原创 2019-08-10 10:40:05 · 310 阅读 · 0 评论 -
4、MapperScannerConfigurer
这节的MapperScannerConfigurer与spring耦合性比较强,所以如果遗忘了知识点的,请移步到spring源码分析系列文章中复习下虽然可以不配置扫描器,但是通常我们在项目中还是会去配置扫描器,配置如下:<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <prope...原创 2019-08-10 10:44:27 · 1023 阅读 · 0 评论 -
5、sql执行过程-1
一、前情回顾上一节讲到,mybatis使用JDK的动态代理为每个接口生成了代理类,其实际处理类为MapperProxypublic Object org.apache.ibatis.binding.MapperProxy.invoke(Object proxy, Method method, Object[] args) throws Throwable { if (Object.cl...原创 2019-08-10 10:47:22 · 219 阅读 · 0 评论 -
6、sql执行过程-2
接着上一小节的内容public BoundSql org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(Object parameterObject) { DynamicContext context = new DynamicContext(configuration, parameterObject); ...原创 2019-08-10 10:50:21 · 170 阅读 · 0 评论 -
7、sql执行过程-3
多结果集下面的例子来自http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html有两条sql语句SELECT * FROM BLOG WHERE ID = #{id}SELECT * FROM AUTHOR WHERE ID = #{id}有下xml配置<resultMap id="blogResult" type="Blog"&...原创 2019-08-10 10:51:10 · 132 阅读 · 0 评论 -
8、mybatis源码系列总结
一、类介绍SqlSessionFactoryBean:实现了spring的FactoryBean接口,一个工厂类,用户构建SqlSessionFactoryConfiguration:配置对象,xml解析后的描述由被它维护XMLMapperBuilder:用于构建基本的ParamterMap,ResultMap的建造器XMLStatementBuilder:用于构建sql语句对象的建造器...原创 2019-10-04 23:52:17 · 174 阅读 · 0 评论