环境要求

  1. JDK1.8及以上版本

  2. MySQL数据库

  3. Apache Maven 3.6.1构建工具

  4. IDEA/VSCode/Eclipse开发工具任选其一

  5. 思维导图:Xmind ZEN

技术要求

  1. 熟悉Java语言
  2. 熟悉数据库技术
  3. 熟悉Maven项目管理工具
  4. 熟悉使用IDEA/VSCode开发工具

学习建议

MyBatis的学习分为四个阶段:了解---->>入门--->>熟悉--->>拓展

了解阶段:请参考官方指导文档入门学习基础知识。

https://mybatis.org/mybatis-3/zh/index.html

入门阶段:能把MyBatis技术灵活应用于实际项目中。

熟悉阶段:研究MyBatis原理、MyBatis源码。

拓展阶段:基于Mybatis框架,进行封装和扩展,例如开发扩展插件:形如Mybatis-plus,Mybatis-generator等。

适合人群

本教程适合:

  1. 想要学习 MyBatis持久化框架的小伙伴

  2. 零散学习过 MyBatis ,没有系统化学习深入MyBatis的小伙伴

  3. 对 MyBatis 开源代码的内部和底层感兴趣的小伙伴

知识导图

本教程以任务为驱动:12个学习案例+通用代码机(全网首发

说明:

  1. study-mybatis-chapter01:Mybatis开发环境搭建:客户查询入门程序
  2. study-mybatis-chapter02:主配置文件mybatis-config.xml使用
  3. study-mybatis-chapter03:映射器配置XML标签型应用实战
  4. study-mybatis-chapter04:映射器SQL注解应用实战
  5. study-mybatis-chapter05:Provider注解应用实战
  6. study-mybatis-chapter06:动态SQL应用实战
  7. study-mybatis-chapter07:Mybatis高级查询应用实战
  8. study-mybatis-chapter08:Mybatis大批量数据入库应用实战
  9. study-mybatis-chapter09:Mybatis调用存储过程或函数应用实战
  10. study-mybatis-chapter10:Mybatis 缓存应用实战
  11. study-mybatis-chapter11:生成Mybatis 注解型源代码,区别于:Mybatis-generator
  12. study-mybatis-chapter12:生成Mybatis XML型源代码
  13. study-mybatis-chapter13:集成Springboot

你会学到什么

  1. 配置文件、Mapper 映射文件的编写和设计
  2. Mybatis持久化技术在企业中的应用场景【电商平台核心功能一案到底
  3. MyBatis 中的注解使用详解
  4. MyBatis 中的缓存、事务、插件等机制
  5. MyBatis 的整体生命周期、执行流程全剖析
  6. MyBatis 中使用到的设计模式详解
  7. 自己动手二次封装 MyBatis

版本更新

  • 2022年02月12日:发布【MyBatis框架概述】章节,简易入门程序,体会Mybatis特征及工作原理;
  • 2022年03月06日:发布 【MyBatis的XML核心配置】章节,主配置和映射器案例分析;
  • 2022年06月05日:发布【MyBatis注解】章节,SQL注解和Provider注解实现;
  • 2022年07月08日:发布【MyBatis动态SQL】章节,动态SQL各元素和动态SQL实战案例分析;
  • 2022年08月11日:发布【MyBatis的高级查询】章节,关联映射、分页、存储过程和函数应用等实战案例分析;
  • 2022年09月11日:发布【MyBatis的缓存配置】章节,一级缓存、二级缓存和自定义mybatis-redis缓存;
  • 2022年11月11日:发布【MyBatis插件开发和应用】章节;
  • 2022年12月12日:更新完毕,进入迭代期。

详见:https://www.ossbar.com/

持久化技术Mybatis知识精讲【形成知识体系篇】的更多相关文章

  1. 聊聊IT技术人的知识体系

    我在我的2020年终总结中提到技术人需要建立自己的知识体系,那么怎么建立自己的知识体系呢?技术人的知识体系又是什么样的呢?今天,和你一一分享. 1 关于我的12字方针 我在我的<2020年终回顾 ...

  2. Android学习之基础知识九 — 数据存储(持久化技术)之SQLite数据库存储

    前面一讲介绍了数据持久化技术的前两种:文件存储.SharedPreferences存储.下面介绍第三种技术:SQLite数据库存储 一.SQLite数据库存储 SQLite数据库是一款轻量级的关系型数 ...

  3. Android学习之基础知识九—数据存储(持久化技术)

    数据持久化是将那些内存中的瞬时数据保存到存储设备,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失. Android系统中主要提供了3种方式用于简单地实现数据持久化功能:文件存储.SharedP ...

  4. MyBatis知多少(18)MyBatis系统

    小型.简单系统 小型应用程序通常只涉及单个数据库,只有一些相当简单的用户界面和领域模型.它的业务逻辑非常简单,甚至对一些简单的CRUD (Create, Read, Update, Delete:增删 ...

  5. MyBatis知多少(12)私有数据库

    如果你从事软件开发工作有了一段时间的话,那么肯定听过关于“自己动手还是花钱购买” 的争论.该争论是说,针对一个业务问题,我们是应该自己动手构建自己的解决方案呢,还是应 该花钱购买一个声称已经解决了此问 ...

  6. MyBatis知多少(6)表现层与业务逻辑层

    表现层 表现层负责向最终用户展示应用程序的控制方式以及数据.它还要负责所有信息的布局和格式.今天,商业应用程序最流行的表现方式应该算是Web前端了,它使用HTML和JavaScript并通 过Web浏 ...

  7. MyBatis知多少(5)业务对象模型

    几乎所有结构良好的软件都使用了分层设计.分层设计将一个应用程序根据技术职能分为几 个内聚的部分,从而将某种特定技术或接口的实现细节与其他部分分离开来.分层设计可以用任 何一种强壮的编程语言来实现.图1 ...

  8. MyBatis知多少(3)

    解决存储过程固有限制的方法之一就是将SQL嵌入到更加通用的语言中去.与存储过程将业务逻辑移入数据库相反,内联SQL将SQL从数据库移入了应用程序代码.这就使得SQL语句可以直接与语言进行交互.从某种意 ...

  9. FluentData - 轻量级.NET ORM持久化技术解决方式

    FluentData - 轻量级.NET ORM持久化技术解决方式   文件夹:    一.什么是ORM?  二.使用ORM的优势  三.使用ORM的缺点  四.NET下的ORM框架有哪些?  五.几 ...

  10. Java并发编程核心知识体系精讲

    第1章 开宗明义[不看错过一个亿]本章一连串设问:为什么学并发编程?学并发编程痛点?谁适合学习本课?本课程包含内容和亮点?首先4大个理由告诉你为什么要学,其实源于JD岗位要求就不得不服了.其次5个痛点 ...

随机推荐

  1. 智能勘探 | AIRIOT智慧油田管理解决方案

      石油勘探和开采地处偏远地区,涉及面广且生产规模大.特殊的作业环境下,使得工作人员作业条件艰苦,仅靠人工值守难度很大,不可避免的遇到一系列硬核挑战: 1.设备维护难度较高: 2.采油厂分布地域广.分 ...

  2. vulnhub靶场-->MATRIX-BREAKOUT: 2 MORPHEUS

    靶机下载地址 MATRIX-BREAKOUT: 2 MORPHEUS << 点我下载 开始打靶 IP发现 nmap扫描网段发现靶机ip:192.168.111.139 端口发现 对靶机进行 ...

  3. MySql类型转换函数cast

    这两天处理一个现网的MySQL慢查询工单,学到了一个好用的MySQL函数:cast.事情是这样的: 我们有两张表 t_user 和 t_rule 表,需要关联这两张表去查询,关联字段是 t_user ...

  4. centos7系统的七个运行级别和设置默认运行级别

    一.系统七个运行级别概述 0 系统停机模式,系统默认运行级别不能设置为0,否则不能正常启动,机器关的 1 单用户模式,root权限,用于系统维护,禁止远程登陆,就像Windows下的安全模式登录 2 ...

  5. jQuery模态框原理

    <!-- 引入jQuery.js --> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquer ...

  6. WPF开发快速入门【4】自定义控件与用户控件

    概述 本文描述WPF的自定义控件和用户控件. 自定义控件 前面文章介绍了WPF的ControlTemplate,当我们对系统控件自带的样式不太满意时,我们可以通过控件模板自定义用户的样式,以Butto ...

  7. 让Easysearch运行在LoongArch(3C5000L)上

    简介 在上一次,我介绍了在国产操作系统 Kylin V10 (Lance)-aarch64 上安装单机版 Easysearch/Console/Agent/Gateway/Loadgen,小伙伴们可查 ...

  8. Mysql慢sql优化

    Mysql慢sql优化 index1.MySQL的执行过程2.索引的定义3.MySQL执行计划explain or desc4.索引使用/创建规则5.弊端6.设计规范7.SQL建议 1. MySQL ...

  9. mapperTemp

    @Insert("INSERT INTO coxisolate.instanceinfo (instance_id, app_name, create_time, update_time, ...

  10. MySQL常见的后端面试题,你会几道?

    为什么分库分表 单表数据量过大,会出现慢查询,所以需要水平分表 可以把低频.高频的字段分开为多个表,低频的表作为附加表,且逻辑更加清晰,性能更优 随着系统的业务模块的增多,放到单库会增加其复杂度,逻辑 ...