我的第一个Mybatis程序
1.环境需求
- jdk8+ https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html
- Mysql5.7.32 https://dev.mysql.com/downloads/mysql/
- maven3.6.1 http://maven.apache.org/download.cgi
- IDEA https://www.jetbrains.com/idea/
2.搭建数据库
- 作为测试用的的数据
create database `mybatis`;
use `mybatis`;
CREATE TABLE `user`(
`id` INT(10) NOT NULL PRIMARY KEY,
`name` VARCHAR(20) DEFAULT NULL,
`pwd` VARCHAR(20) DEFAULT NULL
)
INSERT INTO `user`(`id`,`name`,`pwd`) VALUES
(1,'刘备','123456'),(2,'关羽','666666'),(3,'张飞','987654');
3.使用IDEA创建Maven项目

4.导入mybatis依赖
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!--mybatis-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.2</version>
</dependency>
5.mybatis核心配置文件
- 在src/main/resources目录下创建mybatis-config.xml
- 可以在官网查看帮助文档
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="test">
<environment id="test">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=false&useUnicode=true&characterEncoding=utf8"/>
<property name="username" value="root"/> <!--你的账号-->
<property name="password" value="root"/> <!--你的密码-->
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="dao/userMapper.xml"/> <!--路径为下面的userMapper.xml文件路径-->
</mappers>
</configuration>
6.mybatis工具类
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 java.io.IOException;
import java.io.InputStream;
public class mybatisUtils {
private static SqlSessionFactory sqlSessionFactory;
static {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
}
public static SqlSession getSession(){
return sqlSessionFactory.openSession();
}
}
7.实体类
public class User {
private int id;
private String name;
private String password;
//以下省略部分代码
//构造方法,有参,无参
//set(),get()
//toString()方法
}
8.Mapper接口类
import java.util.List;
public interface UserMapper {
List<User> selectUsers();
}
9.Mapper.xml配置文件
- namespace为以上UserMapper接口类路径
- id为上面的方法名
- resultType为实体类路径
- select * from user 查询语句
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="dao.UserMapper">
<select id="selectUsers" resultType="bean.User">
select * from user
</select>
</mapper>
10.junit测试
@Test
public void selectAllUsers() {
SqlSession session = MybatisUtils.getSession();
UserMapper mapper = session.getMapper(UserMapper.class);
List<User> users = mapper.selectUsers();
for (User user: users){
System.out.println(user);
}
session.close();
}
}
11结果

可以自编写其他增删改查方法
本文介绍了如何搭建Mybatis环境,包括Java、Mysql、Maven和IDEA的安装,然后创建Maven项目并引入Mybatis和Mysql驱动依赖。接着配置mybatis-config.xml文件,建立数据库连接,编写User实体类、UserMapper接口及对应的XML配置文件,最后通过JUnit测试执行查询操作,成功打印出用户列表。

被折叠的 条评论
为什么被折叠?



