Spring Boot整合MyBatis实践指南

需积分: 8 0 下载量 137 浏览量 更新于2024-08-05 收藏 15KB MD 举报
"这篇文档介绍了在Spring Boot环境下MyBatis的几种使用方法,重点是MyBatis与XML的集成。" 在Spring Boot中整合MyBatis可以极大地简化开发流程,提高开发效率。以下是对标题和描述中所述知识点的详细说明: ### MyBatis+XML的使用 1. 引入依赖 要在Spring Boot项目中使用MyBatis,首先需要在`pom.xml`文件中添加相关的Maven依赖。这些依赖包括`mybatis-spring-boot-starter`以实现自动化配置,`mysql-connector-java`用于连接MySQL数据库,以及`spring-boot-starter-test`用于测试。 ```xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.4</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.26</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> ``` 2. 配置数据库连接 在`application.properties`或`application.yml`中配置数据库连接信息,例如: ```properties # application.properties 示例 spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8 spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver ``` 3. Mapper接口和XML映射文件 创建Mapper接口并使用`@Mapper`注解,例如: ```java @Mapper public interface UserMapper { User getUserById(Long id); } ``` 然后在资源目录下的`src/main/resources/mapper`目录中创建对应的XML文件,如`UserMapper.xml`,编写SQL语句: ```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.springboot.mapper.UserMapper"> <select id="getUserById" resultType="com.springboot.model.User"> SELECT * FROM user WHERE id = #{id} </select> </mapper> ``` 4. 配置扫描Mapper接口 使用`@MapperScan`注解在Spring Boot主类上,指定包含Mapper接口的包名,这样Spring Boot会自动扫描并注册这些接口。 ```java @SpringBootApplication @MapperScan(basePackages = "com.springboot.mapper") public class SpringbootApplication { public static void main(String[] args) { SpringApplication.run(SpringbootApplication.class, args); } } ``` 5. 使用Mapper接口 在服务层或控制器中注入Mapper接口,然后可以直接调用其方法执行SQL操作。例如: ```java @Service public class UserService { @Autowired private UserMapper userMapper; public User getUserById(Long id) { return userMapper.getUserById(id); } } ``` 通过以上步骤,你就能够在Spring Boot应用中使用MyBatis进行数据库操作了。这种方式结合了Spring Boot的自动化配置和MyBatis的灵活SQL,使得数据库操作变得简单易用。同时,XML映射文件提供了清晰的SQL语句,便于维护和调试。