Mybatis环境配置
这次项目的最终效果
![屏幕截图 2024-09-12 005757]()
当看到控制台输出你的姓名和学号就说明做对了
步骤如下
官网地址如下
[]: https://mybatis.org/mybatis-3/zh_CN/index.html “官网地址”
如图
![image-20240913132244500]()
打开IDEA进行maven工程搭建
1.打开IDEA后,新建项目。选择maven后点击下一步
![image-20240913132809151]()
2.进行maven的一些配置,然后直接完成。
![image-20240913133039974]()
第一次弄可能得等一会,因为IDEA要下载一些文件
开始Mybatis环境搭建
1.加载完毕后如图,接着打开pom.xml文件进行依赖的配置
![image-20240913133814082]()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.github.chulianyuang</groupId> <artifactId>Mybatis01</artifactId> <version>1.0-SNAPSHOT</version>
<properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> </properties>
<dependencies>
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.1</version> </dependency>
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.9</version> </dependency>
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies>
</project>
|
将上面的代码复制然后覆盖就行,MySql驱动的版本你自己参考一下你的数据版本。我用的是5.7,所以我的数据库驱动用的是5.1.9版本。粘贴完成记得刷新一下maven,这样他就会自动帮你导入对应版本的依赖了。
2.在官网那里复制SQL会话工厂的XML文件
![image-20240913134704387]()
回到IDEA后在如图所示创建mybatis.xml并将复制的内容粘贴上去
![image-20240913134844726]()
当然,里面的驱动和用户名和密码都是要改成你自己的。
不知道自己数据库驱动的,可以在如图位置找到
![image-20240913135133016]()
直接替换即可
3.创建数据库和表(一张表对应一个POJO)
url的话就是你的数据库地址,所以接下来的操作,你得先在你的电脑那里创建好你的数据库,并建好表,我已经建好了,如下图
![image-20240913135537636]()
你不知道自己的url地址可以在IDEA右上角的database那里找,顺便把数据库连接测试一下
![image-20240913135758875]()
4.接下来创建POJO(根据你的数据库结构来创建)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| package com.github.chulianyuang;
public class Emp { private Integer id; private String name; private Integer learnID;
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 Integer getLearnID() { return learnID; }
public void setLearnID(Integer learnID) { this.learnID = learnID; }
@Override public String toString() { return "Emp{" + "id=" + id + ", name='" + name + '\'' + ", learnID=" + learnID + '}'; } }
|
这个是我根据我的数据库表信息写的POJO,仅供参考
这个类搭建在哪里呢,如图所示
![image-20240913140724534]()
5.接下来再创建一个类来装SQL语句。默认用类名加Mapper,打开官网复制下面内容,粘贴到新创建的XML文件中去
![image-20240913141122308]()
完成如下图
![image-20240913141509013]()
其中的数据要做一点修改
1 2 3 4 5 6 7 8 9
| <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.github.chulianyuang.Emp"> <select id="selectEmp" resultType="com.github.chulianyuang.Emp"> select * from Emp where id = #{id} </select> </mapper>
|
6.回到mybatis.xml将mapper中的resource替换成你SQL语句文件的地址,将他们绑定起来
![image-20240913141923962]()
如上图。做到现在就差不多完成了,接下来就是测试一下
7.打开官网,复制下面内容
![image-20240913142126209]()
8.idea中新建测试类,并粘贴到测试类中
![image-20240913142311461]()
resourse要改成Mybatis.xml
现在就可以进行输出了
![image-20240913142650370]()
粘贴完后如图
![image-20240913144931629]()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| package com.github.chulianyuang;
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 Text { @Test public void text01() throws IOException { String resource = "Mybatis.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
try (SqlSession session = sqlSessionFactory.openSession()) { Emp emp = (Emp) session.selectOne("com.github.chulianyuang.EmpMapper.selectEmp", 2); System.out.println(emp); }
} }
|
运行测试类就出结果了
搭建完成,总结
![屏幕截图 2024-09-18 160517]()