一文读懂SpringBoot整合MyBatis的核心要点
发布时间: 2024-02-27 13:01:20 阅读量: 54 订阅数: 47
# 1. SpringBoot和MyBatis简介
## 1.1 SpringBoot简介
Spring Boot 是由 Pivotal 团队提供的全新框架,它使用约定优于配置的理念可以让你在最短的时间内构建一个功能完善的Spring应用。它同时集成了大量常用的第三方库配置,使开发变得更加便利。Spring Boot的主要优点包括:
- 独立运行的Spring应用
- 自动化配置
- 无代码生成和xml配置
- 真正的外观接口
- 内嵌式容器
## 1.2 MyBatis简介
MyBatis 是一个强大且灵活的持久层框架,它消除了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 MyBatis 可以使用简单的 XML 或注解用于配置和原生映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录。MyBatis的主要优点包括:
- 简化复杂的 JDBC 编程
- 动态 SQL
- 支持原生查询
- 提供映射标签
- 提供对象关系映射
以上就是SpringBoot和MyBatis的简介,下一章节我们将看到如何进行SpringBoot整合MyBatis的基本配置。
# 2. SpringBoot整合MyBatis的基本配置
在这一章节中,我们将介绍如何在SpringBoot项目中整合MyBatis,并进行基本的配置。
#### 2.1 创建SpringBoot项目
首先,我们需要创建一个新的SpringBoot项目。可以通过Spring Initializr进行创建,也可以通过Maven或Gradle手动创建项目。
#### 2.2 添加MyBatis依赖
在项目的`pom.xml`文件中,添加MyBatis和数据库驱动的依赖:
```xml
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!-- 添加你所使用的数据库驱动依赖 -->
```
#### 2.3 配置数据源
在SpringBoot项目的`application.properties`(或`application.yml`)文件中,配置数据库连接信息:
```properties
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
#### 2.4 配置MyBatis
创建MyBatis的配置类,配置SqlSessionFactory和MapperScannerConfigurer:
```java
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.mapper.MapperScannerConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class MyBatisConfig {
@Bean
public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource) {
SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
sqlSessionFactory.setDataSource(dataSource);
return sqlSessionFactory;
}
@Bean
public MapperScannerConfigurer mapperScannerConfigurer() {
MapperScannerConfigurer scannerConfigurer = new MapperScannerConfigurer();
scannerConfigurer.setBasePackage("com.example.mapper");
return
```
0
0