Springboot 整合 Mybatis
摘 Mybatis 官方简介:
1.MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。
2.MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
3.MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
持久层框架是什么?
持久层,可以理解为对数据 缓存(瞬时)、保存(持久)的区别,缓存下来的数据在会一定时间内被销毁,某种意义上是瞬时的;而保存下来的数据在硬盘中存储,不会被销毁,它是持久的。
关于持久层的概念请参考 https://www.jianshu.com/p/22df0f9be584
执行流程:
MyBatis 支持通过 XML 或注解的方式来配置需要运行的 SQL 语句,并且,最终由框架本身将 Java 对象和 SQL 语句映射生成最终执行的 SQL ,执行后,再将结果映射成 Java 对象返回。
Mybatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索封装,虽然要手写 sql 语句,但 MyBatis Generator (MBG) 和通用 Mapper 的出现,避免项目中产生大量的 xml 内容。
MyBatis Generator (MBG) https://mybatis.org/generator
MyBatis 为什么需要通用 Mapper ? https://blog.csdn.net/isea533/article/details/83045335
摘自官方的介绍
MyBatis Spring-Boot-Starter will help you use MyBatis with Spring Boot
🌰gradle:
打开 start.spring.io
按照上图所示选择 Mybatis Framework 和 Mysql Driver ,生成成功导入到 IDE,build.gradle 依赖如下
dependencies { //Mybatis Framework implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.3' //Mysql Driver runtimeOnly 'mysql:mysql-connector-java' testImplementation('org.springframework.boot:spring-boot-starter-test') { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' } }