mybatis(从零开始学习)

1. 基础

1.1 ORM概述

mybatis(从零开始学习)_第1张图片
mybatis(从零开始学习)_第2张图片
mybatis(从零开始学习)_第3张图片
mybatis(从零开始学习)_第4张图片
mybatis(从零开始学习)_第5张图片
mybatis(从零开始学习)_第6张图片
mybatis(从零开始学习)_第7张图片

1.2 Mybatis配置连接信息获取SqlSession

1.2.1 Mybatis框架简介

mybatis(从零开始学习)_第8张图片
mybatis(从零开始学习)_第9张图片

1.2.2 Mybatis入门获取SqlSession对象

(1)Mybatis的jar包下载

mybatis(从零开始学习)_第10张图片

(2)创建工程,导入jar包

mybatis(从零开始学习)_第11张图片

(3)创建Mybatis主配置文件mybatis-config.xml

mybatis(从零开始学习)_第12张图片
mybatis(从零开始学习)_第13张图片
mybatis(从零开始学习)_第14张图片
mybatis(从零开始学习)_第15张图片

(4) 加载此配置文件,创建SqlSession对象

mybatis(从零开始学习)_第16张图片
mybatis(从零开始学习)_第17张图片
mybatis(从零开始学习)_第18张图片

1.2.3 核心API(重点学习)

mybatis(从零开始学习)_第19张图片
mybatis(从零开始学习)_第20张图片

1.2.4 日志的配置

mybatis(从零开始学习)_第21张图片
mybatis(从零开始学习)_第22张图片

1.2.5 封装MyBatis获得SqlSession的工具类

mybatis(从零开始学习)_第23张图片
mybatis(从零开始学习)_第24张图片
mybatis(从零开始学习)_第25张图片
mybatis(从零开始学习)_第26张图片
mybatis(从零开始学习)_第27张图片
在这里插入图片描述

1.3 使用Mybatis实现数据的简单查询

1.3.1 实体类

mybatis(从零开始学习)_第28张图片

1.3.2 数据库表

mybatis(从零开始学习)_第29张图片
在这里插入图片描述

1.3.3 创建映射文件

mybatis(从零开始学习)_第30张图片
mybatis(从零开始学习)_第31张图片

1.3.4 加载映射文件

mybatis(从零开始学习)_第32张图片

1.3.5 项目结构

mybatis(从零开始学习)_第33张图片

1.3.6 开发测试类

mybatis(从零开始学习)_第34张图片
mybatis(从零开始学习)_第35张图片

1.3.7 执行结果

mybatis(从零开始学习)_第36张图片
mybatis(从零开始学习)_第37张图片
mybatis(从零开始学习)_第38张图片
mybatis(从零开始学习)_第39张图片
在这里插入图片描述
在这里插入图片描述

2. 进阶

2.1 Mybatis接口动态代理

在这里插入图片描述

2.1.1 定义接口

在这里插入图片描述
mybatis(从零开始学习)_第40张图片

2.1.2 创建映射文件

mybatis(从零开始学习)_第41张图片
mybatis(从零开始学习)_第42张图片

2.1.3 MyBatis全局配置文件中配置包扫描接口以及XXXMapper.xml

mybatis(从零开始学习)_第43张图片

2.1.4 编写测试类

mybatis(从零开始学习)_第44张图片
mybatis(从零开始学习)_第45张图片

2.1.5 执行结果

mybatis(从零开始学习)_第46张图片

2.1.6 接口代理开发的规范

mybatis(从零开始学习)_第47张图片

2.2 Mybatis实现数据增删改查

个人博客文章:
https://blog.csdn.net/m0_64245578/article/details/135096347

2.3 Mybatis接收单个参数

2.3.1 在映射文件XXXmapper.xml中编写两个查询

mybatis(从零开始学习)_第48张图片

(1)#{}

mybatis(从零开始学习)_第49张图片

(2)${}

mybatis(从零开始学习)_第50张图片

2.3.2 定义XXXMapper接口方法

mybatis(从零开始学习)_第51张图片

2.3.3 测试代码

mybatis(从零开始学习)_第52张图片
mybatis(从零开始学习)_第53张图片

2.3.4 测试结果

mybatis(从零开始学习)_第54张图片

注意

mybatis(从零开始学习)_第55张图片

2.4 Mybatis接收对象参数

在这里插入图片描述

2.4.1 把数据封装成对象,把单个对象传递给mybatis

mybatis(从零开始学习)_第56张图片
mybatis(从零开始学习)_第57张图片
mybatis(从零开始学习)_第58张图片
mybatis(从零开始学习)_第59张图片

2.4.2 把数据封装在Map集合中以键值对的方式传递给MyBatis

mybatis(从零开始学习)_第60张图片
mybatis(从零开始学习)_第61张图片
mybatis(从零开始学习)_第62张图片
mybatis(从零开始学习)_第63张图片

2.5 Mybatis接收多个参数

在这里插入图片描述

2.5.1 匿名参数 顺序传递参数

mybatis(从零开始学习)_第64张图片
mybatis(从零开始学习)_第65张图片
mybatis(从零开始学习)_第66张图片
mybatis(从零开始学习)_第67张图片

2.5.2 使用@Param注解进行参数传递

mybatis(从零开始学习)_第68张图片
mybatis(从零开始学习)_第69张图片
mybatis(从零开始学习)_第70张图片
mybatis(从零开始学习)_第71张图片
mybatis(从零开始学习)_第72张图片

常见异常

mybatis(从零开始学习)_第73张图片
mybatis(从零开始学习)_第74张图片

3. 高级

3.1 Mybatis配置文件常见设置

3.1.1 配置文件的文档结构

mybatis(从零开始学习)_第75张图片
mybatis(从零开始学习)_第76张图片
mybatis(从零开始学习)_第77张图片

mybatis(从零开始学习)_第78张图片
mybatis(从零开始学习)_第79张图片

3.1.2 properties属性

(1)通过properties元素标签设置

mybatis(从零开始学习)_第80张图片
mybatis(从零开始学习)_第81张图片

(2)通过jdbc.properties配置文件

mybatis(从零开始学习)_第82张图片
mybatis(从零开始学习)_第83张图片

(3)通过properties属性引入文件

mybatis(从零开始学习)_第84张图片

(4) 在Java代码中构建属性java.util.Properties属性对象

mybatis(从零开始学习)_第85张图片
mybatis(从零开始学习)_第86张图片

3.1.3 setting设置

在这里插入图片描述
mybatis(从零开始学习)_第87张图片
mybatis(从零开始学习)_第88张图片
mybatis(从零开始学习)_第89张图片
mybatis(从零开始学习)_第90张图片
mybatis(从零开始学习)_第91张图片
mybatis(从零开始学习)_第92张图片
在这里插入图片描述

3.1.4 typeAliases(类型别名)

mybatis(从零开始学习)_第93张图片
mybatis(从零开始学习)_第94张图片
mybatis(从零开始学习)_第95张图片
mybatis(从零开始学习)_第96张图片
mybatis(从零开始学习)_第97张图片
mybatis(从零开始学习)_第98张图片
mybatis(从零开始学习)_第99张图片
mybatis(从零开始学习)_第100张图片
mybatis(从零开始学习)_第101张图片
mybatis(从零开始学习)_第102张图片
mybatis(从零开始学习)_第103张图片
在这里插入图片描述

3.1.5 typeHandlers(类型处理器)

mybatis(从零开始学习)_第104张图片
mybatis(从零开始学习)_第105张图片
mybatis(从零开始学习)_第106张图片
mybatis(从零开始学习)_第107张图片
mybatis(从零开始学习)_第108张图片
mybatis(从零开始学习)_第109张图片
mybatis(从零开始学习)_第110张图片
mybatis(从零开始学习)_第111张图片
mybatis(从零开始学习)_第112张图片
mybatis(从零开始学习)_第113张图片
mybatis(从零开始学习)_第114张图片
mybatis(从零开始学习)_第115张图片
mybatis(从零开始学习)_第116张图片
mybatis(从零开始学习)_第117张图片
mybatis(从零开始学习)_第118张图片
在这里插入图片描述
mybatis(从零开始学习)_第119张图片
mybatis(从零开始学习)_第120张图片
mybatis(从零开始学习)_第121张图片
mybatis(从零开始学习)_第122张图片
mybatis(从零开始学习)_第123张图片
mybatis(从零开始学习)_第124张图片

3.1.6 objectFactory(对象工厂)

mybatis(从零开始学习)_第125张图片
mybatis(从零开始学习)_第126张图片
mybatis(从零开始学习)_第127张图片

3.1.7 plugins(插件)

mybatis(从零开始学习)_第128张图片
mybatis(从零开始学习)_第129张图片
在这里插入图片描述
mybatis(从零开始学习)_第130张图片
mybatis(从零开始学习)_第131张图片

3.1.8 environments(环境配置)

mybatis(从零开始学习)_第132张图片
mybatis(从零开始学习)_第133张图片
mybatis(从零开始学习)_第134张图片
mybatis(从零开始学习)_第135张图片

3.1.9 databaseIdProvider(数据库厂商标识)

mybatis(从零开始学习)_第136张图片
mybatis(从零开始学习)_第137张图片

3.1.10 mappers(映射器)

mybatis(从零开始学习)_第138张图片
mybatis(从零开始学习)_第139张图片
mybatis(从零开始学习)_第140张图片
在这里插入图片描述

3.2 新增数据补充

mybatis(从零开始学习)_第141张图片

3.2.1 插入数据返回ID

SELECT LAST_INSERT_ID():自增

mybatis(从零开始学习)_第142张图片
mybatis(从零开始学习)_第143张图片
mybatis(从零开始学习)_第144张图片
mybatis(从零开始学习)_第145张图片
mybatis(从零开始学习)_第146张图片

mybatis(从零开始学习)_第147张图片
mybatis(从零开始学习)_第148张图片
mybatis(从零开始学习)_第149张图片

UUID()方法:非自增

mybatis(从零开始学习)_第150张图片
mybatis(从零开始学习)_第151张图片

3.2.2 批量插入

mybatis(从零开始学习)_第152张图片
mybatis(从零开始学习)_第153张图片
mybatis(从零开始学习)_第154张图片
mybatis(从零开始学习)_第155张图片
mybatis(从零开始学习)_第156张图片

3.3 动态更新

在这里插入图片描述
mybatis(从零开始学习)_第157张图片
mybatis(从零开始学习)_第158张图片
mybatis(从零开始学习)_第159张图片
mybatis(从零开始学习)_第160张图片
在这里插入图片描述

3.4 动态查询

mybatis(从零开始学习)_第161张图片
mybatis(从零开始学习)_第162张图片
mybatis(从零开始学习)_第163张图片
mybatis(从零开始学习)_第164张图片
mybatis(从零开始学习)_第165张图片
mybatis(从零开始学习)_第166张图片
在这里插入图片描述
mybatis(从零开始学习)_第167张图片

3.5 分页查询

mybatis(从零开始学习)_第168张图片
在这里插入图片描述

3.5.1 mybatis分页插件的使用

(1)导入分页插件包

mybatis(从零开始学习)_第169张图片

(2)在mybatis的配置文件中配置分页插件,并设置属性(可选)

mybatis(从零开始学习)_第170张图片
mybatis(从零开始学习)_第171张图片

(3)mybatis分页插件pageHelper的API实现分页

mybatis(从零开始学习)_第172张图片
mybatis(从零开始学习)_第173张图片
mybatis(从零开始学习)_第174张图片
mybatis(从零开始学习)_第175张图片
mybatis(从零开始学习)_第176张图片
mybatis(从零开始学习)_第177张图片
mybatis(从零开始学习)_第178张图片
mybatis(从零开始学习)_第179张图片
mybatis(从零开始学习)_第180张图片

3.5.2 mybatis分页插件原理

mybatis(从零开始学习)_第181张图片
mybatis(从零开始学习)_第182张图片
mybatis(从零开始学习)_第183张图片
mybatis(从零开始学习)_第184张图片
mybatis(从零开始学习)_第185张图片
在这里插入图片描述
mybatis(从零开始学习)_第186张图片
mybatis(从零开始学习)_第187张图片
mybatis(从零开始学习)_第188张图片
mybatis(从零开始学习)_第189张图片

3.6 自定义结果集

mybatis(从零开始学习)_第190张图片
mybatis(从零开始学习)_第191张图片
mybatis(从零开始学习)_第192张图片
mybatis(从零开始学习)_第193张图片
mybatis(从零开始学习)_第194张图片
mybatis(从零开始学习)_第195张图片
mybatis(从零开始学习)_第196张图片
mybatis(从零开始学习)_第197张图片
mybatis(从零开始学习)_第198张图片
mybatis(从零开始学习)_第199张图片
mybatis(从零开始学习)_第200张图片
mybatis(从零开始学习)_第201张图片
mybatis(从零开始学习)_第202张图片

3.7 多对一映射

mybatis(从零开始学习)_第203张图片
mybatis(从零开始学习)_第204张图片
mybatis(从零开始学习)_第205张图片
mybatis(从零开始学习)_第206张图片
mybatis(从零开始学习)_第207张图片
mybatis(从零开始学习)_第208张图片
mybatis(从零开始学习)_第209张图片
mybatis(从零开始学习)_第210张图片
mybatis(从零开始学习)_第211张图片
mybatis(从零开始学习)_第212张图片

3.7.1 自定义值对象查询

mybatis(从零开始学习)_第213张图片
mybatis(从零开始学习)_第214张图片
mybatis(从零开始学习)_第215张图片
mybatis(从零开始学习)_第216张图片

3.7.2 association标签关联对象查询

mybatis(从零开始学习)_第217张图片
mybatis(从零开始学习)_第218张图片
mybatis(从零开始学习)_第219张图片
mybatis(从零开始学习)_第220张图片
mybatis(从零开始学习)_第221张图片
mybatis(从零开始学习)_第222张图片
mybatis(从零开始学习)_第223张图片
mybatis(从零开始学习)_第224张图片
mybatis(从零开始学习)_第225张图片
mybatis(从零开始学习)_第226张图片
mybatis(从零开始学习)_第227张图片

3.8 一对多映射

在这里插入图片描述
mybatis(从零开始学习)_第228张图片

3.8.1 表连接查询

mybatis(从零开始学习)_第229张图片
mybatis(从零开始学习)_第230张图片
mybatis(从零开始学习)_第231张图片
mybatis(从零开始学习)_第232张图片

3.8.2 分布查询

mybatis(从零开始学习)_第233张图片
mybatis(从零开始学习)_第234张图片
mybatis(从零开始学习)_第235张图片
mybatis(从零开始学习)_第236张图片
mybatis(从零开始学习)_第237张图片
mybatis(从零开始学习)_第238张图片## 3.9 mybatis缓存
mybatis(从零开始学习)_第239张图片

3.9.1 一级缓存

mybatis(从零开始学习)_第240张图片
mybatis(从零开始学习)_第241张图片
mybatis(从零开始学习)_第242张图片
mybatis(从零开始学习)_第243张图片
mybatis(从零开始学习)_第244张图片
mybatis(从零开始学习)_第245张图片
mybatis(从零开始学习)_第246张图片
mybatis(从零开始学习)_第247张图片
在这里插入图片描述
mybatis(从零开始学习)_第248张图片
mybatis(从零开始学习)_第249张图片
mybatis(从零开始学习)_第250张图片

3.9.2 二级缓存

mybatis(从零开始学习)_第251张图片
mybatis(从零开始学习)_第252张图片
mybatis(从零开始学习)_第253张图片
mybatis(从零开始学习)_第254张图片
mybatis(从零开始学习)_第255张图片
mybatis(从零开始学习)_第256张图片
mybatis(从零开始学习)_第257张图片

你可能感兴趣的:(mybatis,spring)