什么是Mybatis
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。
MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
第一个Mybatis程序
1. 使用IDEA创建一个普通的Maven项目
2. 在项目中添加需要的依赖
3. 编写mybatis-config.xml配置文件
4. 编写一个工具类获得 SqlSession
每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心的
SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得
而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先配置的 Configuration 实例来构建出 SqlSessionFactory 实例
5. 测试案例
① 写一个简单的UserDao
② 写对应的Mapper.xml文件
6. 结果
推荐使用方法一
错误处理
1. org.apache.ibatis.binding.BindingException
Type interface dao.UserDao is not known to the MapperRegistry.
解决方法:在mybatis-config.xml配置文件中注册 UserMapper.xml
2. java.lang.ExceptionInInitializerError
Caused by: org.apache.ibatis.exceptions.PersistenceException:
Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource dao/UserMapper.xml
解决方法:在pom.xml文件中加入以下代码
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>