持久层
操作数据存储的层
与什么数据库无关
与什么技术无关
ORM
O(Object)R(Relationship)M(Mapping)对象关系映射
MyBatis框架就是一款持久层的ORM框架
MyBatis与JDBC的关系
MyBatis的底层是JDBC,基于反射技术在运行时调用JDBC,实现数据库编程
苞米豆 baomidou官方文档
https://baomidou.com/
MyBatis-Plus与SpringBoot的关系
MyBatis-Plus框架能够与SpringBoot框架无缝整合
学习一门框架
1.搭建环境
(1)安装哪些依赖(三方库)
(2)需要哪些配置
(3)框架提供了哪些API,怎么用
2.如何应用
3.研究他的底层
MyBatis-Plus 基础配置参数
MyBatis-Plus替代了原生的JDBC
代码写在工程的哪个包里面
dao包:用原生的JDBC写,包名就叫dao
mapper包:用mybatis-plus框架写,包名建议叫mapper
创建持久层的子包
在mapper子包中定义接口
在xml文件中编写SQL语句
xml文件写在resources/mapper目录中
设置xml文件的文件头
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper>
</mapper>
在IEDA的插件市场中搜索并安装MyBatisX插件
实现接口与xml绑定后快速查询
检查接口中的抽象方法在绑定xml文件中是否有对应标签绑定
File - Setting - Plugins - MarketPlace
在启动类中使用@MapperScan("mapper包的全路径")注解
如何拿到框架插件的Mapper接口的实现类?
拿不到,因为没有物理文件,存在于JVM内存中
如何拿到框架创建的Mapper接口的实现类的对象?
框架说:实现类你是拿不到的,对象我帮你创建好放在内存中,你直接拿对象
Mybatis写SQL语句的几种方式
1.在绑定xml文件中写
<insert></insert>
<update></update>
<delete></delete>
<select></select>
2.不需要绑定xml文件,使用注解去写
@Insert
@Update
@Delete
@Select
3.不绑定xml文件,继承官方的BaseMapper接口(只能单表)