- 内容简介
- 前言
- 第 1 章 第一个 Spring Boot 项目
- 第 2 章 集成 MySQL 数据库
- 第 3 章 集成 Spring Data JPA
- 第 4 章 使用 Thymeleaf 模板引擎
- 第 5 章 Spring Boot 事务支持
- 第 6 章 使用过滤器和监听器
- 第 7 章 集成 Redis 缓存
- 第 8 章 集成 Log4j 日志
- 8.3 使用 Log4j 记录日志
- 第 9 章 Quartz 定时器和发送 Email
- 第 10 章 集成 MyBatis
- 第 11 章 异步消息与异步调用
- 第 12 章 全局异常处理与 Retry 重试
- 第 13 章 集成 MongoDB 数据库
- 第 14 章 集成 Spring Security
- 第 15 章 Spring Boot 应用监控
- 第 16 章 集成 Dubbo 和 Zookeeper
- 第 17 章 多环境配置与部署
- 第 18 章 Spring Boot 原理解析
- 参考文献
10.2 集成 MyBatis

10.2.1 引入依赖
在 Spring Boot 中集成 Mybatis,首先需要在 pom.xml 文件中引入所需的依赖,具体代码如下:
<!-- mybatis start --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency>
10.2.2 添加 MyBatis 配置
在 pom 文件中添加 Mybatis 所需的依赖之后,我们需要在 application.properties 文件中添加如下配置信息:
### mybatis 配置 mybatis.mapper-locations=classpath:/mappers/*Mapper.xml mybatis.type-aliases-package=com.example.demo.dao
- mybatis.mapper-locations:Mapper 资源文件存放的路径。
- mybatis.type-aliases-package:Dao 接口文件存放的目录。
10.2.3 Dao 层和 Mapper 文件开发
application.properties 配置添加完成之后,我们需要根据 MyBatis 配置添加对应的文件夹。首先,在/src/main/java/com.example.demo.dao 目录下新建 AyUserDao 接口,这样 Spring Boot 启动时,就可以根据 application.properties 配置 mybatis.type-aliases-package,找到 AyUserDao 接口。AyUserDao 具体代码如下:
- @Mapper:重要注解, MyBatis 根据接口定义与 Mapper 文件中的 SQL 语句动态创建接口实现。
- @Param:注解参数,在 Mapper.xml 配置文件中,可以采用#{}的方式对 @ Param 注解括号内的参数进行引用。
- findByNameAndPassword:该方法可以通过用户名和密码查询用户。
然后在/src/main/resources 目录下新建 AyUserMapper.xml 文件,Spring Boot 在项目启动时,会根据 application.properties 配置 mybatis.mapper-locations 找到该文件。AyUserMapper 具体代码如下:
- mapper>标签:该标签的 namespace 属性用于绑定 Dao 接口。
- <select>标签:用来编写 select 语句,映射查询语句。select 标签有几个重要的属性,比如 resultMap。
- <resultMap>:映射管理器 resultMap,是 Mybatis 中最强大的工具,描述了如何将数据库查询的结果集映射到 Java 对象,并管理结果和实体类之间的映射关系。
AyUserDao 代码开发完成之后,在之前开发好的 AyUserService 接口类中添加接口 findByNameAndPassword,具体代码如下:
然后,在 AyUserServiceImpl 类中实现 findByNameAndPassword 接口,具体代码如下:
10.2.4 测试
代码开发完成之后,在 MySpringBootApplicationTests 类下添加测试方法,具体代码如下:
执行测试用例,在 IntelliJ IDEA 控制台可以看到相应的打印信息。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论