[疫情期间复习] mybatis源码分析系列(一) 准备工作

3 篇文章 0 订阅
3 篇文章 0 订阅

新冠时期互联网公司倒闭,降薪,无薪休假等信息铺天盖地。只会crud的日子让人烦躁与不安疫,随时都将面临失业。大环境再次变好时 注定是大航海时代(海贼王看多了)。如何才能在众多人中脱颖而出?读过源码是我们傲娇的资本。
为大航海时代准备着,加油吧少年。

看源码之前灵魂的拷问:
1.mybatis如何加载配置文件 ?
2.mybatis执行sql的工厂如何创建 有几种 ?
3.mybatis如何获取mapper ?
4.mybatis执行sql流程 ?
5.mybatis执行完毕数据如何映射 ?
带着这几个问题开始我们的起航
看源码必须要把github上的源码fork到自己的空间
为什么?当然是写解释喽
github地址: https://github.com/mybatis/mybatis-3
废话不多少说开始干就玩了。

包名说明
annotation自定义注解
bindingmapper相关
buider构建,xml,annotation
cache缓存
datasource数据源,pooled,unpooled,jndi
exception异常定义
executor执行器
io通过类加载器在jar包中寻找一个package下满足条件的所有类
jdbcjdbc单元测试工具
lang指定java版本支持7和8
logging日志相关
mapping映射
parsingxml解析,${} 格式的字符串解析
plugin插件
reflection反射
scripting脚本
session核心,session相关
transaction事务
type类型处理器,实现java和jdbc中的类型之间转换
centered 文本居中right-aligned 文本居右

开始阅读来到test中的autoconstructor包中修改mybatis-config.xml
在这里插入图片描述
修改后值

  <environments default="development">
          <environment id="development">
              <transactionManager type="JDBC"/>
                  <dataSource type="UNPOOLED">
                    <!-- 配置连接信息 -->
                      <property name="driver" value="com.mysql.jdbc.Driver"/>
                      <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
                      <property name="username" value="root"/>
                      <property name="password" value="root"/>
                  </dataSource>
            </environment>
      </environments>

执行内在的CreateDB.sql 注意mysql高版本的可能不支持建表语句中的类型 自行修改下即可 我们主要是探究源码而不是类型。
AutoConstructorTest 类执行没有问题准备完毕。
当然也可以不修改xml 用原来的也没有问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值