SpringBoot整合Mybatis3
1、导入Mybatis依赖
点击这里,进入,Mybatis-SpringBoot-Starter的官方网址
Mybatis依赖为:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.1</version>
</dependency>
2、学习Mybatis导入的依赖,中的自动配置原理
进入最重要的Mybatis自动配置类,学习其中的源码

3、学习Mybatis的使用(官网)
如下:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NoerHlnZ-1676703496826)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218094320525.png)]](https://i-blog.csdnimg.cn/blog_migrate/79a55e2a8d3d1d6d740a2421e4bafa44.png)
根据以上文档的阅读整合Mybatis
接下来讲解如何进行SpringBoot整合Mybatis
4、在配置文件application.yml中,配置Mybatis的Mapper的位置。
-
找到application.yml或者application.properties文件
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ebyssNfA-1676703496827)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218143351976.png)]](https://i-blog.csdnimg.cn/blog_migrate/95c698058ab15bc402f9fb6e59d52afc.png)
-
配置mybatis的mapper位置:
首先建立以下的目录结构。
我的目录结构为:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ejWyLslP-1676703496827)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218143631600.png)]](https://i-blog.csdnimg.cn/blog_migrate/d70423a20531c7d36605a5316b703d22.png)
所以,
配置的路径为:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B1GLeKq8-1676703496828)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218143451234.png)]](https://i-blog.csdnimg.cn/blog_migrate/5643ff76d74f1f47ec9504eca1d3d94b.png)
即,mybatis: mapper-locations: classpath:mybatis/mapper/*.xml你可以根据你的配置文件的路径进行修改里面的配置(注意,上面图中*.xml指的是mapper文件夹下的所有的xml文件。)
5、编写Mybatis的接口(interface,注意要加@Mapper注解),以及对应的XML文件
- 建立如下的目录结构:mapper文件夹,以及在此文件夹创新UserMapper(接口,即UserMapper.interface)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S4hSE0kL-1676703496828)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218144201874.png)]](https://i-blog.csdnimg.cn/blog_migrate/b7ecca9eb56f1a624150fc030605e5ae.png)
其中,有个小鸟,是因为我安装了==MybatisX的插件==
UserMapper的代码为:
package com.zhao.admin.mapper;
import com.zhao.admin.bean.User;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper {
User getUserById(Long id);
}
6、编写Service接口调用Mapper接口,Controller调用Service接口
-
建立service层调用Mapper接口
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YVbrGAcF-1676703496829)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218144642046.png)]](https://i-blog.csdnimg.cn/blog_migrate/ac10bb78cf8b497f4375efb7c311b7ac.png)
UserService.java代码为:
package com.zhao.admin.service; import com.zhao.admin.bean.User; import com.zhao.admin.mapper.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class UserService { @Autowired UserMapper userMapper; public User getUserById(Long id) { return userMapper.getUserById(id); } } -
Controller层调用service层接口
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LWzbY8fu-1676703496829)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218144849671.png)]](https://i-blog.csdnimg.cn/blog_migrate/b96bd223e11546249e3804029d2943d0.png)
UserController.java的代码为:
package com.zhao.admin.controller; import com.zhao.admin.bean.User; import com.zhao.admin.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; @Controller public class UserController { @Autowired UserService userService; @ResponseBody @GetMapping("/user") public User getUserById(@RequestParam("id") Long id) { return userService.getUserById(id); } }
7、测试
运行项目,测试:localhost:8080/user?id=2
在Postman中测试的结果如下:(如果没有postman在浏览器中输入以上也是可以的,但是开发中可能用postman的比较多,最好多学习学习工具的使用,若对postman的使用不清晰,可以留言,我可以写一个教程)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cPZPVxMK-1676703496830)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20230218145423962.png)]](https://i-blog.csdnimg.cn/blog_migrate/bfea8cbe20d2b8786a74f9e2c4c8e093.png)
最后,如果对你有帮助,点个关注,相互学习吧。
本文详细介绍了如何在SpringBoot项目中整合Mybatis,包括导入依赖、配置Mapper位置、编写Mapper接口和XML文件、创建Service和Controller接口,以及测试过程。
2024

被折叠的 条评论
为什么被折叠?



