下面详细讲解如何在Spring Boot项目中引入MyBatis并连接MySQL数据库。
一、前置条件
- Java环境(Java 8及以上版本)
- Maven环境(Maven 3及以上版本)
- MySQL数据库
二、引入依赖
在项目的pom.xml
文件中添加如下依赖:
<dependencies>
<!-- Spring Boot依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- MyBatis依赖 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<!-- MySQL驱动依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
</dependencies>
其中,spring-boot-starter-web
是Spring Boot项目的基础依赖,mybatis-spring-boot-starter
是MyBatis的Spring Boot支持依赖,mysql-connector-java
是MySQL的JDBC驱动。
三、配置数据源
在application.properties
文件中配置MySQL数据库连接的相关参数:
# 数据库连接配置
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&maxReconnects=10
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
其中,spring.datasource.url
是数据库连接地址,spring.datasource.username
和spring.datasource.password
分别是连接数据库的用户名和密码,spring.datasource.driver-class-name
是MySQL的JDBC驱动类。
四、创建实体类和Mapper
在项目的src/main/java
目录下创建实体类User.java
和Mapper接口UserMapper.java
:
// User.java
public class User {
private Integer id;
private String name;
private Integer age;
// 省略getter和setter方法
}
// UserMapper.java
@Mapper
public interface UserMapper {
List<User> getAllUsers();
void insertUser(User user);
}
其中,User.java
是用户实体类,UserMapper.java
是用户Mapper接口。注意,UserMapper.java
要使用@Mapper
注解。
五、编写Mapper XML文件
在项目的src/main/resources
目录下创建UserMapper.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.UserMapper">
<select id="getAllUsers" resultType="com.example.entity.User">
select id, name, age from user
</select>
<insert id="insertUser">
insert into user(id, name, age) values(#{id}, #{name}, #{age})
</insert>
</mapper>
其中,<select>
标签用于查询所有用户,<insert>
标签用于插入一个新的用户。
六、编写Controller
在项目的src/main/java
目录下创建UserController.java
文件:
@RestController
public class UserController {
@Autowired
private UserMapper userMapper;
@GetMapping("/users")
public List<User> getAllUsers() {
return userMapper.getAllUsers();
}
@PostMapping("/users")
public String insertUser(@RequestBody User user) {
userMapper.insertUser(user);
return "success";
}
}
其中,@RestController
注解表示该类是一个REST风格的控制器,@Autowired
注解用于注入UserMapper
实例,@GetMapping
注解用于处理HTTP GET请求,@PostMapping
注解用于处理HTTP POST请求。
七、示例1 查询所有用户
启动项目后,在浏览器中访问http://localhost:8080/users
即可查询所有用户。
八、示例2 添加新用户
使用Postman等工具向http://localhost:8080/users
发送POST请求,请求体为JSON格式的用户数据,即可完成添加新用户的操作。
至此,完整的在Spring Boot项目中引入MyBatis并连接MySQL数据库的攻略就讲解完毕了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot图文并茂详解如何引入mybatis与连接Mysql数据库 - Python技术站