SpringBoot 微框架解析,大厂面试经验分享
珍藏版(1)——Mybatis 入门
1.什么是 MyBatis
2.为什么我们要用 Mybatis?
3.Mybatis 快速入门
3.1 导入开发包
3.2 准备测试工作
3.3 创建 mybatis 配置文件
3.4 编写工具类测试是否获取到连接
3.5 创建实体与映射关系文件
3.6 编写 DAO
4.Mybatis 工作流程
5.完成 CRUD 操作
5.1 增加学生
5.2 根据 ID 查询数据
5.3 查询所有数据
5.4 根据 id 删除
5.5 修改
5.6 小细节
5.7 Mybatis 分页
6.动态 SQL
6.1 动态查询
6.2 动态更新
6.3 动态删除
6.4 动态插入
7.入门总结
珍藏版(2)——Mybatis 配置信息
1.映射文件
1.1 占位符
1.2 主键生成策略
1.2.1 UUID
1.3 主键返回
1.4 resultMap
1.5 resultMap 和 resultType 区别
1.6 使用 resultMap
1.7 resultType 和 resultMap 用法总结
1.8 Mybatis 映射文件处理特殊字符
2.配置文件
2.1 别名
2.2 Mapper 加载
2.3 延迟加载
2.4 延迟加载测试
3.配置相关总结
珍藏版(3)——关联映射
1.Mybatis【多表连接】
1.1—对一
1.1.1 设计表
1.1.2 实体
1.1.3 映射文件
1.1.4 DAO 层
1.2—对多
1.2.1 设计数据库表
1.2.2 实体
1.2.3 映射文件 SQL 语句
1.2.4 DAO
1.3 多对多
1.3.1 数据库表
1.3.2 实体
1.3.3 映射文件
1.3.4 DAO
2.关联映射总结
珍藏版(4)——缓存+Mapper 代理+逆向工程
1.前言
2.Mybatis 缓存
2.1 Mybatis—级缓存
2.2 Mybatis 二级缓存
2.3 Mybatis 二级缓存配置
2.4 查询结果映射的 pojo 序列化
2.5 禁用二级缓存
2.6 刷新缓存
2.7 了解军 Mybatis 缓存的—些参
3.mybatis 和 ehcache 缓存框架整合
3.1 整合 jar 包
3.2 ehcache.xml 配置信息
3.3 应用场景与局限性
3.3.1 应用场景
3.3.2 局限性
4.Mapper 代理方式
4.1 Mapper 开发规范
4.2 Mapper 代理返回值问题
5.Mybatis 解决 JDBC 编程的问题
6.Mybatis 逆向工程
6.1 修改 pom.xml 文件
6.2 generatorConfig.xml 配置文件
6.3 使用插件步骤
6.4 最后生成代码
珍藏版(5)——Mybatis 整合 Spring
1.Mybatis 与 Spring 整合
1.1 导入 jar 包
1.2 创建表
1.3 创建实体
1.4 创建实体与表的映射文件
1.5 创建 Mybatis 映射文件配置环境
1.6 配置 Spring 核心过滤器【也是加载总配置文件】
1.7 配置数据库信息、事务
1.8 创建 Dao、Service、Action
1.9 JSP 页面测试
2.总结
手把手教你整合开发 MyBatis-Spring 项目——《深入浅出 MBati 技术原理与实战》
《深入浅出 MBati 技术原理与实战》总共是分为三大部分:
第一部分是 MyBatis 基础应用,主要介绍如何高效地使用 MyBatis。
第 1 节:MyBatis 的内容简介,告诉读者 MyBatis 是什么,在何种场景下使用它。
第 2 节:主要介绍 MyBatis 的基础模块及其生命周期,并给出实例。
第 3 节:主要介绍 MyBatis 配置的主要含义和内容。
第 4 节:介绍 MyBatis 映射器的主要元素及其使用方法。
第 5 节:介绍动态 SQL,助你轻松应对大部分的 SQL 场景。
第二部分是 MyBatis 原理,我们将深入源码去理解 MyBatis 的内部运行原理以及插件的开发方法和技巧。
第 6 节:介绍 MyBatis 的解析和运行原理,我们将了解到 SqlSession 的构建方法,以及其四大对象是如何工作的。
第 7 节:在第 6 节的基础上着重介绍 MyBatis 的插件,这里我们将学习插件的设计原理,以及开发方法和注意的要点。
第三部分是 MyBatis 的实战应用,主要讲解 MyBatis 的一些实用的场景。
第 8 节:介绍 MyBatis-Spring,主要讲解如何在 Spring 项目中集成 MyBatis 应用,帮助读者在 Spring 的环境中顺利使用 MyBatis。
第 9 节:介绍 MyBatis 的实用场景,精选一批典型且又常用的场景。详细解析每一个场景下,开发人员需要注意避免的一些错误和性能上的损失。
还有:一本小小的 MyBatis 源码分析书——《MyBatis 源码分析》
其次:针对 MyBatis 面试——收整了最常见的一些问题并附上解析
1.为什么需要预编译?
2.Mybatis 都有哪些 Executor 执行器?它们之间的区别是什么?
3.Mybatis 中如何指定使用哪一种 Executor 执行器?
4.Mybatis 是否支持延迟加载?如果支持,它的实现原理是什么?
5.# {}和 ${}的区别?
6.模糊查询 like 语句该怎么写?
7.在 mapper 中如何传递多个参数?
8.Mybatis 如何执行批量操作?
9.如何获得生成的主键?
10.当实体类中的属性名和表中的字段名不一样 ,怎么办
11.Mapper 编写有哪几种方式?
12.什么是 MyBatis 的接口绑定?有哪些实现方式?
13.使用 MyBatis 的 mapper 接口调用时有哪些要求?
14.最佳实践中,通常一个 Xml 映射文件,都会写一个 Dao 接口与之对应,请问,这个 Dao 接口的工作原理是什么?Dao 接口里的方法,参数不同时,方法能重载吗?
15.Mybatis 的 Xml 映射文件中,不同的 Xml 映射文件,id 是否可以重复?
16.简述 Mybatis 的 Xml 映射文件和 Mybatis 内部数据结构之间的映射关系?
17.Mybatis 是如何将 sql 执行结果封装为目标对象并返回的?都有哪些映射形式?
18.MyBatis 中所有标签?
19.MyBatis 实现一对一,一对多有几种方式,怎么操作的?
20.Mybatis 是否可以映射 Enum 枚举类?
21.Mybatis 动态 sql 是做什么的?都有哪些动态 sql?能简述一下动态 sql 的执行原理不?
22.分页方式?
23.简述 Mybatis 的插件运行原理,以及如何编写一个插件?
24.Mybatis 的一级、二级缓存?
25.pageHelper 原理?
最后
我还为大家准备了一套体系化的架构师学习资料包以及 BAT 面试资料,供大家参考及学习,戳这里免费领取
已经将知识体系整理好(源码,笔记,PPT,学习视频)免费领取。
评论