一、MyBatis是什么?
1.1 介绍
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
简单的来说就是:Mybatis是一个实现数据持久化的开源框架,简单理解为就是对JDBC进行封装。开发者只需要关注sql语句本身,而不是去花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程
1.2 MyBatis优点
- 与JDBC减少了一半以上的代码量
- Mybatis是简单的持久化框架,简单,容易学习
- 相对灵活 sql写在xml中,从程序代码中直接分离,降低耦合,便于管理优化
- 支持动态sql
- 提供映射标签 支持对象与数据库中的ORM字段映射
1.3 对象关系映射
ORMapper : Object Relationship Mappering 对象关系映射
简单的说就是将数据库表和实体类及实体类属性封装起来,让我们可以通过操作实体类就能操作数据表。 这就要我们在定义实体类的属性时要与数据库表中的字段保持一致。
对象是指:面向对象
关系是指:关系型数据库
简单来讲就是java到mysql的映射,可以以面向对象的思想来管理数据库。
等同于两个不同语言在这种关系映射的条件下联系起来,这样就可以直接交流
1.4 MyBatis的接口和类
1.5 准备工作
依赖导入
dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.5</version>
</dependency>
</dependencies>
全局配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="db.properties"/>
<typeAliases>
<typeAlias type="com.ye.pojo.User" alias="User"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/y