SpringBoot整合Mybatis
1.创建spring工程,导入Mybatis依赖:
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<!-- JDBC -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
2.在resources目录下创建application.properties用于配置数据库信息(yml文件也行)
spring:
datasource:
username: root
password: zhc
url: jdbc:mysql://localhost:3306/zhang?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.cj.jdbc.Driver
3.创建实体类和mapper文件中的数据库调用方法接口:
package com.zhang.jdbc.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
// 实体类的创建,使用了lombok
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
// 对应数据库中的三个属性
private Integer id;
private String loginName;
private String loginPassword;
}
// 创建对应的mapper
package com.zhang.jdbc.mapper;
import com.zhang.jdbc.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserMapper {
// 定义增删改查的方法
List<User> getUserList();
int deleteUserById(Integer id);
int updateUserById(User user);
int insertUser(User user);
}
4.在resources目录下创建一个mybatis及之下的mapper文件夹,mapper文件夹下创建一个映射文件mapper.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">
<!--
namespace:命名空间,自己写,需要指定接口文件的全限定路径名称
id:接口中方法名
resultType:指定返回数据的类型,也要写全限定名称
-->
<mapper namespace="com.zhang.jdbc.mapper.UserMapper">
<select id="getUserList" resultType="User">
select * from user;
</select>
</mapper>
5.在配置文件添加路径和实体依赖
mybatis:
type-aliases-package: com.zhang.jdbc.pojo
mapper-locations: classpath:mybatis/mapper/*.xml