概述
-
Java开发三层框架:
- 表现层(展示数据)
- 业务层(处理业务需求)
- 持久层(数据库交互)
-
Mybatis基于持久层,内部封装了JDBC(加载驱动、创建链接等基础操作),开发者只关注sql语句,并用ORM思想实现了结果集的封装
-
ORM: Object Relational Mapping 对象关系映射
- 把数据库表和实体类及实体类的属性映射,使得可以通过操作实体类实现操作表
入门·环境搭建
- 视频教程中环境搭建流程为:
- 准备数据库,创建Maven工程,导入坐标
- 创建实体类和DAO的接口(dao是面向对象的数据库接口,定义了对数据进行的操作,包括接口和该接口的实现类)
- 创建Mybatis的主配置文件(数据库连接信息等)
- 创建映射配置文件(相应的sql语句)
下面是视频教程中mybatis环境搭建的详细步骤,以仅有一张user表的数据库为例:
- 使用使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于类路径(classpath)中即可。如果使用 Maven 来构建项目,则需将下面的依赖代码置于 pom.xml 文件中
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>x.x.x</version>
</dependency>
按视频教程所说,还应导入Mysq的依赖:
<dependency>
<groupId>Mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>x.x.x</version>
</dependency>
- 创建实体类
实体类应该创建在scr/main/java里面(User.java)
实体类中的 属性名 要和数据库表的 字段名 一样 - 创建dao接口
教程中将接口文件统一放在scr/main/java中dao包中(UserDao.java),在此接口中定义了一个查询所有user的方法(findAll),此接口没有实现类,sql语句在此接口对应的配置文件中定义。
public interface UserDao{
// 查询所有操作
List<User> findAll();
}
- 写主配置文件
配置文件应该放在scr/main/resources中(SqlMapConfig.xml)
配置文件首先粘贴头部的约束信息,再配置数据库的基本信息,最后配置映射文件位置
<?xml vers