文章目录:
1.准备数据表(Navicat)
2.通过Maven创建项目(IDEA)
3.在pom.xml文件中加入相关的Maven依赖坐标
4.编写Student实体类、StudentDao接口
5.编写StudentDao.xml文件(mapper映射文件)
6.编写MyBatis.xml主配置文件
7.编写MyTest测试类
8.框架搭建成功,正常运行结果
9.总结大体的步骤
1.准备数据表(Navicat)
![](https://img-blog.csdnimg.cn/20210226172147904.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210226172155697.png)
2.通过Maven创建项目(IDEA)
![](https://img-blog.csdnimg.cn/2021022617264683.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210226172656283.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210226172705112.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/2021022617291449.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
那么用Maven搭建的MyBatis大框架就是上图的样式。
下面对项目进行一些特定的配置设置:👇👇👇
![](https://img-blog.csdnimg.cn/20210227093603944.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210227093613415.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210227093625157.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210227093636250.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
3.在pom.xml文件中加入相关的Maven依赖坐标
4.0.0
com.bjpowernode
ch01-first
1.0
UTF-8
14
14
org.mybatis
mybatis
3.5.1
mysql
mysql-connector-java
5.1.9
junit
junit
4.11
test
src/main/java
**/*.properties
**/*.xml
false
这里给出修改后的xml文件,注释已经写的很详细了!!!
我在代码的 标签上方写了注释:依赖列表。也就是说我们需要在这里面添加需要用到的架包的坐标。
其中包括 MyBatis 依赖、MySQL驱动、junit测试,而在 标签中添加的是 标签(作用已写在注释中)
4.编写Student实体类、StudentDao接口
![](https://img-blog.csdnimg.cn/20210226174217528.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
package com.bjpowernode.entity;
/**
*
*/
public class Student {
//属性名和列名一样
private Integer id;
private String name;
private String email;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "学生实体的信息{" +
"id=" + id +
", name='" + name + '\'' +
", email='" + email + '\'' +
", age=" + age +
'}';
}
}
package com.bjpowernode.dao;
import com.bjpowernode.entity.Student;
/**
*
*/
public interface StudentDao {
//查询一个学生
Student selectStudentById(Integer id);
}
5.编写StudentDao.xml文件(mapper映射文件)
![](https://img-blog.csdnimg.cn/20210226174252603.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
select id,name,email,age from student where id=#{studentId}
这里给出修改后的xml文件,注释已经写的很详细了!!!
标签中就是我们要执行的 sql 语句,这里注意 namespace、id、resultType 的含义及设置!!!
6.编写MyBatis.xml主配置文件
![](https://img-blog.csdnimg.cn/20210226174821613.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
在src/main目录下,我们要新建一个 resources 目录,然后右键单击 resources → Mark Directory as → Resources Root。将此文件夹的类型修改为 Resources Root,之后在这个目录下创建一个 File,名为 MyBatis.xml。
这里给出修改后的xml文件,注释已经写的很详细了!!!
7.编写MyTest测试类
![](https://img-blog.csdnimg.cn/2021022617535945.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
package com.bjpowernode;
import com.bjpowernode.entity.Student;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
/**
*
*/
public class MyTest {
//测试MyBatis执行sql语句
@Test
public void testSelectStudentById() throws IOException {
//调用MyBatis某个对象的方法,执行mapper文件中的sql语句
//MyBatis核心类:SqlSessionFactory
//1.定义MyBatis主配置文件的位置,从类路径开始的相对路径
String config="mybatis.xml";
//2.读取主配置文件,使用MyBatis框架中的Resources类
InputStream inputStream=Resources.getResourceAsStream(config);
//3.创建SqlSessionFactory对象,使用SqlSessionFactoryBuilder类
SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(inputStream);
//4.获取SqlSession对象
SqlSession session=factory.openSession();
//5.指定要执行的sql语句的id
// sql的 id = namespace + "." + select|update|insert|delete标签的id属性值
String sqlId="com.bjpowernode.dao.StudentDao" + "." + "selectStudentById";
//6.通过SqlSessionde的方法,执行sql语句
Student student=session.selectOne(sqlId,1001);
System.out.println("使用MyBatis查询一个学生:" + student);
//7.关闭SqlSession对象
session.close();
}
}
每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心的。SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先配置的 Configuration 实例来构建出 SqlSessionFactory 实例。
从 XML 文件中构建 SqlSessionFactory 的实例非常简单,建议使用类路径下的资源文件进行配置。 但也可以使用任意的输入流(InputStream)实例,比如用文件路径字符串或 file:// URL 构造的输入流。MyBatis 包含一个名叫 Resources 的工具类,它包含一些实用方法,使得从类路径或其它位置加载资源文件更加容易。
8.框架搭建成功,正常运行结果
![](https://img-blog.csdnimg.cn/20210226175751645.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzgyMzgwOA==,size_16,color_FFFFFF,t_70)
9.总结大体的步骤
创建 student 表(id,name,email,age)。新建 Maven 项目。 修改 pom.xml 。 1)加入Maven依赖:MyBatis依赖、MySQL驱动、junit 2)在 中加入资源插件 创建实体类 Student,定义属性(属性名和列名保持一致)。创建 Dao 接口,定义操作数据库的方法。创建 StudentDao.xml(mapper文件),写sql语句。 1)MyBatis框架推荐是把 Java 代码和 sql 语句分开 2)mapper文件:定义在和 Dao接口同一个目录下,一个表一个mapper文件 创建 MyBatis.xml 文件,放在 resources 目录下。 1)定义创建连接实例的数据源(DataSource)对象 2)指定其他 mapper 文件的位置 创建测试类 1)可以使用 main 方法,测试访问数据库。 2)也可以使用 junit 访问数据库。
相关的xml文件参考网址:https://mybatis.org/mybatis-3/zh/index.html
|