01 mybatis框架整体概况(2018.7.10)-
01 mybatis框架整体概况(2018.7.10)-
F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)
maven用的是3.39的版本
F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\02_工具\maven工具包
mysql用的是5.5的版本
mysql的客户端用的是Mysql_Front
ecplise和Maven全都是绿色版本
基于的jdk的版本是1.8的版本
github的地址:
https://github.com/mybatis/mybatis-3
MyBatis官方文档
http://www.mybatis.org/mybatis-3/
下面可以选择中文
基于jdbc的封装
jdbc链接数据库的回顾
首先是加载驱动类
Class.formName();
本地的数据库:我们要使用MyBatis插入到这个开课吧数据库内的dept部门表内的数据,一共就有三个字段。
github首页中下载最新的版本的Mybatis
看官方文档的介绍,要使用就要先引入jar包文件
使用Maven去管理,我们来按照他的要求去做一下
Maven就是jar包的管理工具,在我们的工具里面有Maven工具包。我们这里的maven是一个免安装的版本,把maven的压缩包解压出来,然后和我们的Ecplise工具进行关联。
Maven的关联
选择自己电脑上的maven的路径:D:\java\maven
如果是断网了,可以直接复制这个文件夹替换到我们机器的:
F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\.m2
.m2的文件夹
鼠标右键新建maven的工程
设置包名和项目名称:
Group Id:就是包名
Artifact Id:就是工程的名称了
如果写测试的话可以在test/java下写
每一个Maven工程都会有一个pom.xml
把哦我们要添加的jar包,在pom.xml内做一个注册就可以了
32分钟
写上依赖的标签:
dependencies。然后把我们遗爱的jar包放到这个标签里面
复制官方文档的配置标签代码:
http://www.mybatis.org/mybatis-3/zh/getting-started.html#
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>x.x.x</version> </dependency>
我们只需要修改version的标签写上版本号3.4.6
当我们ctrl+s保存这个文件以后,Maven就会自动从网上下载对应的包
光有Mybatis框架还不能操作数据库,还需要使用数据库的驱动包,这里我们还需要第二个jar包的依赖,我们还需要添加MySql的驱动包
可以去Maven的仓库去下载。但是由于讲课的老师的电脑网速的问题,所以我们直接用下载好的
F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\约束文件
F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\mybatis依赖配置文件
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.25</version> </dependency>
有了这些驱动包之后
看文档我们需要新建一个SqlSessionFactory
这里有一个读取流读取的是一个文件:
读取的文件是:org/mybatis/example/mybatis-config.xml
mybatis-config.xml是Mybit的核心配置文档。在这里文档里面 它会告诉Mybit框架,要访问哪些数据库、事务管理、sql映射文件在项目中的位置
视频里面又不详细讲了,说是要快速的过一下这部分内容:38分。
视频中导入了一个项目
导入到Ecplisse中
Mybaits_01_Simple
在resource下面找到SQL映射文件:
这里将会对部门表进行插入操作。
这里要做加载处理
先新建一个实体对象,然后给实体对象的属性赋值
然后鼠标右键,执行这个java类。console内没有任何的输出
我们到数据库内看一下插入的数据
Mybabits是对jdbc的封装,但是没有看到任何一点与jdbc有相像的地方:
SqlSessionFactor和SqlSession都是什么东西?我们通过源码跟踪的方式给大家讲解
19行接了断点。然后dubug as 去执行 java application
44分28秒。断点调试