什么是Mybatis?
Mybatis是一个SQL映射框架,提供数据库的操作能力,实现对数据库的增删改查,实质是是增强办的jdbc.
SQL映射:
可以把数据表中的一行数据映射为一个java对象
操作这个对象,相当于操作表中的数据
为什么使用Mybatis?
必要性:
可以弥补jdbc的缺陷:
1、代码比较多,开发效率低
2、需要关注Connection,Statement,ResultSet对象创建和销毁
3、对ResultSet查询的结果,需要自己封装list
4、重复的代码比较多,没有封装
5、业务代码和数据库操作混在一起
重要性:
开发人员只需写SQL语句即可,Mybatis会负责处理SQL,开发人员写完SQL直接拿数据就行了
怎么使用Mybatis?
1、加入maven的依赖
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
2、创建持久层的dao接口,定义操作数据库的方法
public interface StudentDao {
//查询student表的所有数据
public List<Student> selectStudents();
//插入一条学生数据
int insertStudent(Student student);
}
3、创建一个mapper文件
称为sql映射文件:写sql语句的。一般一个表一个sql映射文件
这个文件是xml文件
4、创建Mybatis的主配置文件:
一个项目就一个主配置文件。
主配置文件提供了数据库的连接信息和SQL映射文件的位置(mapper文件)信息
5、使用Mybatis的对象SqlSession,通过他的方法执行sql语句