springbootmybatis mysql
时间: 2025-03-14 21:14:33 浏览: 29
### Spring Boot 中使用 MyBatis 连接和操作 MySQL 数据库
在 Spring Boot 应用程序中集成 MyBatis 并实现对 MySQL 数据库的操作是一项常见的开发需求。以下是具体方法:
#### 1. 创建 Spring Boot Web 应用
首先,需要创建一个新的 Spring Boot 工程,并引入必要的依赖项。可以通过 `pom.xml` 文件中的 Maven 配置完成这些依赖的导入[^1]。
```xml
<dependencies>
<!-- Spring Boot Starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- MyBatis Integration -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.3.0</version>
</dependency>
<!-- MySQL Driver -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Druid Connection Pool (Optional) -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
</dependencies>
```
#### 2. 配置数据库连接参数
接着,在项目的 `application.properties` 或者 `application.yml` 文件中定义数据库连接的具体参数[^2]。
对于 `application.properties` 的配置如下所示:
```properties
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# Optional: Configure the connection pool using Druid
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.initial-size=5
spring.datasource.min-idle=5
spring.datasource.max-active=20
```
如果采用 YAML 格式的配置,则可以写成这样:
```yaml
spring:
datasource:
url: jdbc:mysql://localhost:3306/your_database_name?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
initialSize: 5
minIdle: 5
maxActive: 20
```
#### 3. 编写 Mapper 接口
MyBatis 的核心功能之一就是通过接口映射 SQL 查询语句。因此,开发者需编写对应的 Mapper 接口以及 XML 映射文件或者直接利用注解方式定义查询逻辑[^3]。
示例 Mapper 接口代码:
```java
@Mapper
public interface UserMapper {
@Select("SELECT * FROM users WHERE id = #{id}")
User findById(int id);
@Insert("INSERT INTO users(name, age) VALUES(#{name}, #{age})")
void insertUser(User user);
}
```
#### 4. 测试数据访问层
最后一步是对上述设置进行验证,确保能够正确执行 CRUD 操作。可以在单元测试类里调用已编写的 DAO 方法来确认其行为是否符合预期[^4]。
```java
@SpringBootTest
class UserRepositoryTest {
@Autowired
private UserMapper userMapper;
@Test
public void testFindById() {
User user = userMapper.findById(1);
assertNotNull(user);
assertEquals("John Doe", user.getName());
}
}
```
以上即是在 Spring Boot 环境下运用 MyBatis 实现与 MySQL 数据交互的主要流程概述。
---
阅读全文
相关推荐



















