一、MyBatis介绍
优点:
- 减轻使用JDBC的复杂性,不用编写重复的创建Connetion , Statement ,不用编写关闭资源代码。
- 直接使用java对象,表示结果数据。让开发者专注SQL 的处理。其他分心的工作由MyBatis 代劳。
二、MyBatis入门
SqlSession:Sql会话。
SqlSessionFactory:sql会话工厂
SqlSessionFactoryBuilder :sql会话工厂生成器
SqlSession对象完全包含以数据库为背景的所有执行SQL操作的方法,它的底层封装了JDBC连接,可以用SqlSession实例来直接执行已映射的SQL语句
三、MyBatis文件
- XML映射 配置文件
起名: mybatis-config.xml
路径:classpath 的根路径
配置内容:
- 全局/属性/插件的配置信息;
- 环境配置信息(连接池 + 事务);
- 关联映射文件;
<?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>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC">
<property name="..." value="..."/>
</transactionManager>
<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="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
- Mybatis 映射文件(Mapper 文件)
起名:XxxMapper.xml,指名是哪一个对象的映射文件;
配置内容:
- 编写增删改查的 SQL,把 SQL 存放到配置文件中的 insert | update | delete | select 元素中去;
- 结果集映射:解决表中的列和对象中属性不匹配的问题;
- 缓存配置
四、动态SQL
五、JavaAPI
当 Mybatis 与一些依赖注入框架(如 Spring)搭配使用时,SqlSession 将被依赖注入框架创建并注入,不需要使用 SqlSessionFactoryBuilder 或者 SqlSessionFactory
参考:官方文档