写点什么

Java 开发实战!不会吧

发布于: 2 小时前

MyBatis 作为持久层框架,其主要思想是将程序中的大量 SQL 语句剥离出来,配置在配置文件中,以实现 SQL 的灵活配置。这样做的好处是将 SQL 与程序代码分离,做到可以在不修改程序代码的情况下,直接在配置文件中修改 SQL。


在这里分享一份 [mybatis 从入门到精通] 的强力教程,定能够助你一臂之力。

Mybatis 基本介绍

  1. ORM 和 MyBatis

  2. 对象/关系数据库映射(ORM)

  3. 基本映射方式

  4. 流行的 ORM 框架简介


目前流行的编程语言,例如 Java、 C#等,都是面向对象的编程语言;而目前主流的数据库产品,例如 Oracle、DB2 等,依然是关系数据库。编程语言和底层数据库的发展不协调,催生出了 ORM 框架,ORM 框架可作为面向对象编程语言和数据库之间的桥梁。


确切地说,MyBatis 并不完全是一种 ORM 框架,它的设计思想和 ORM 相似,只是它允许开发,人员直接编写 SQL 语句,使得访问数据库更加灵活,更准确地说,它应该是一种“SQL Mapping”框架。


Mybatis 的体系结构

  1. SqlSessionFactory

  2. SqlSession

  3. MyBatis 的配置文件结构

  4. settings 设置

  5. typeAliases 类型命名

  6. typeHandlers 类型处理器

  7. objectFactory 对象工厂

  8. environments 配置环境

  9. mapper 映射器


通过前面的介绍可以知道,MyBatis 的持久化解决方案将用户从原始的 JDBC 访问中解放出来,用户只需要定义需要操作的 SQL 语句,无须关注底层的 JDBC 操作,就可以面向对象的方式进行持久层操作。底层数据库连接的获取、数据访问的实现、事务控制等都无须用户关心,从而将应用层从底层的 JDBC/JTAAPI 抽取出来。通过配置文件管理 JDBC 连接,让 MyBatis 解决持久化访问的实现。


MyBatis 中的常用对象有 SqSessionFactory 和 SlSession。


Mybatis 的关联映射和动态 SQL

  1. 一对一

  2. 一对多

  3. 多对多

  4. 动态 SQL


关联关系是面向对象分析、面向对象设计最重要的知识,MyBatis 完全可以理解这种关联关系,如果映射得当,MyBatis 的关联映射将可以大大简化持久层数据的访问。关联关系大致有如下分类。


Mybatis 的事务管理以及缓存机制

  1. 事务的概念

  2. Transaction 接口

  3. 事务的配置创建和使用

  4. 一级缓存( SqlSession 级别)

  5. 二级缓存(mapper 级别)


每个业务逻辑都是由一系列数据库 访问完成的,这-系列数据库访间可能会修改多条数据记录,这一系列修改应该是一个整体,绝不能仅修改其中的几条数据记录。也就是说,多个数据库原子访问应该被绑定成一个整体,这就是事务。事务是一个最小的逻辑执行单元,整个事务不能分开执行,要么同时执行,要么同时放弃执行。


Mybatis 注解配置

  1. MyBatis 常用注解

  2. MyBatis 注解的插入、修改、删除和查询操作

  3. MyBatis 注解的一对一、一对多和多对多操作

  4. MyBatis 注解的动态 SQL


前面介绍了 MyBatis 的基本用法、关联映射、动态 SQL 和缓存机制等知识,其所有的配置都是使用 XML 完成,但是大量的 XML 配置文件的编写是非常繁琐的,因此 MyBatis 也提供了更加简便的基于注解(annotation) 的配置方式。

最后

以上分享的全部分布式技术专题+面试解析+相关的手写和学习的笔记 pdf,高清完整版戳这里免费领取


还有更多 Java 笔记分享如下:



用户头像

还未添加个人签名 2021.07.29 加入

还未添加个人简介

评论

发布
暂无评论
Java开发实战!不会吧