Re:从零开始的Mybatis快速入门(图文并茂)
一、创建项目
1. New Project
项目名称和位置
2. 导入依赖
<?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>org.example</groupId>
<artifactId>mybatis-demo</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 设置jdk为1.8 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<java.version>1.8</java.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
</dependencies>
</project>
3. 项目结构
|-- src
|-- main
| |-- java
| | |-- com
| | |-- example
| | |-- entity
| | | |-- People.java
| | |-- mapper
| | | |-- PeopleMapper.java
| | |-- test
| | | |-- PeopleTest.java
| |-- resources
| |-- mapper
| | |-- PeopleMapper.xml
| |-- sqlMapConfig.xml
|-- test
|-- java
4. 创建实体类
1)安装 lombok插件
2)导入lombok依赖
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
<scope>provided</scope>
</dependency>
3)创建实体类
@Data
@NoArgsConstructor
public class People {
private Integer id;
private String name;
private LocalDateTime createTime;
}
4)创建sql表
CREATE TABLE `mydb`.`people` (
`id` int(11) UNIQUE AUTO_INCREMENT,
`name` varchar(255) NULL,
`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
5. 创建Mapper
1)创建接口
package com.example.mapper;
import com.example.entity.People;
import java.util.List;
public interface PeopleMapper {
List<People> findAll();
}
2)创建xml
<?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="com.example.mapper.PeopleMapper">
<resultMap id="BaseResultMap" type="com.example.entity.People">
<id column="id" jdbcType="INTEGER" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
</resultMap>
<sql id="Base_Column_List">
id, `name`, create_time
</sql>
<select id="findAll" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/> from people
</select>
</mapper>
3)修改sqlMapConfig
<?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>
<!--加载sql映射文件-->
<mappers>
<mapper resource="mapper/PeopleMapper.xml"/>
</mappers>
</configuration>
6. 配置数据源
1)导入依赖
注意数据库版本
--MySQL8.x
--驱动:com.mysql.cj.jdbc.Driver
--url:"jdbc:mysql://localhost:3306/database_name?characterEncoding=utf8 & useSSL=false & serverTimezone=UTC & rewriteBatchedStatements=true"
--MySQL5.x
--驱动:com.mysql.jdbc.Driver
--url:"jdbc:mysql://localhost:3306/database_name"
选择对应版本的依赖
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>my