在开始分析mybatis源码之前,需要定一个目标,也就是我们不是为了读源码而去读,一定是带着问题去读,在读的时候去寻找到答案,然后再读码的同时整理总结,学习一些高级的编码方式和技巧。

首先我们知道mybatis是一个持久层框架,封装了JDBC的一切操作,使得程序在进行JDBC操作时不需要再关注底层是怎么实现的,而只需要按照mybatis定的规则去实现即可。所以在进行mybatis源码分析之前,先来抛出一些问题,然后试着去寻找答案。

1.使用mybatis过程中,需要配置Configuration.xml配置文件,那么这个配置文件是怎么生效的,在mybatis的整个工作过程中又是何时会被用到的?

2.定义的mapper接口类和对应的xml配置文件是如何进行一一映射的?

3.xml中定义的sql语句是如何被执行的?

4.sql语句的执行结果是如何被映射成自定义的对象的?

5.mybatis的插件是如何实现的?

6.mybatis的缓存机制是如何实现的?

7.mybatis和spring框架如何集成?

8.mybatis的事务是如何实现的?

9.mybatis中使用到的设计模式?

10.mybatis中有哪些不足可以改进?

接下来就带着这些问题,开启mybatis的源码解析之旅...

最新文章

  1. ACM: Gym 101047B Renzo and the palindromic decoration - 手速题
  2. Discuz! X3.1直接进入云平台列表的方法
  3. Linux下lampp详解 (转)
  4. Android之动画的学习(转载)
  5. css text-align-last设置末尾文本对齐方式
  6. 使用nbrbutil工具來處理requested media id is in use, cannot process request
  7. jQuery对复选框(checkbox)的全选,全不选,反选等的操作
  8. python_中文乱码问题
  9. Linux进程操作信息
  10. [DevExpress]SplitContainerControl使用小计
  11. STM32之中断与事件---中断与事件的区别
  12. css中border-width 属性
  13. dedeCMS中单独调用子栏目模板和子栏目的文章时修改源代码给channel和chanenartllist加上limit
  14. window编程之win程序框架
  15. undefined reference to `pthread_create'
  16. Python练习:小程序,列车出票程序
  17. Oracle使用外部表批量创建用户
  18. Java关键字(三)——static
  19. linux 下安装ftp 并远程连接
  20. 微软BI 之SSIS 系列 - 理解Data Flow Task 中的同步与异步, 阻塞,半阻塞和全阻塞以及Buffer 缓存概念

热门文章

  1. document数据路由
  2. SQL Server的等待事件
  3. MySQL group replication介绍
  4. 经典的js返回(退个页面)
  5. rest_framework的认证系统
  6. Spark SQL DataFrame新增一列的四种方法
  7. Jmeter测试报告
  8. 15个Node.js项目列表
  9. [Java in NetBeans] Lesson 04. Class / Objects
  10. python-对象与参数传递