当前位置:   article > 正文

SpringBoot整合MyBatis-Plus

springboot整合mybatis-plus

目录

一、MyBatis-Plus的简介

二、环境准备

 2.1 引入依赖

2.2 在 application.yml 配置文件中添加数据库的相关配置:

2.3 准备一张表测试数据

2.4 准备User实体类

 2.5 准备一个UserMapper接口继承BaseMapper

三、测试代码

 3.1 根据id查询单个数据

 3.2 根据id查询多条数据

3.3 分页查询

 3.4 修改数据

 3.5 根据不同的条件删除数据

3.6 插单条数据

四、源码参考


一、MyBatis-Plus的简介

    MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

官网:MyBatis-Plus

二、环境准备

 2.1 引入依赖

  1. <dependencies>
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter</artifactId>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter-test</artifactId>
  9. <scope>test</scope>
  10. </dependency>
  11. <!--SpringBoot-->
  12. <dependency>
  13. <groupId>com.baomidou</groupId>
  14. <!--下面坐标根据自己使用的SpringBoot版本二选一-->
  15. <!--SpringBoot2使用此版本-->
  16. <artifactId>mybatis-plus-boot-starter</artifactId>
  17. <version>3.2.0</version>
  18. </dependency>
  19. <!--mysql-->
  20. <dependency>
  21. <groupId>mysql</groupId>
  22. <artifactId>mysql-connector-java</artifactId>
  23. <version>8.0.21</version>
  24. </dependency>
  25. <!--lombok-->
  26. <dependency>
  27. <groupId>org.projectlombok</groupId>
  28. <artifactId>lombok</artifactId>
  29. <optional>true</optional>
  30. </dependency>
  31. </dependencies>

2.2 在 application.yml 配置文件中添加数据库的相关配置:

  1. #??
  2. server.port=8080
  3. #?????
  4. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
  5. #??ip ipconfig
  6. spring.datasource.url=jdbc:mysql://localhost:3308/mall?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&allowMultiQueries=true
  7. spring.datasource.username=root
  8. spring.datasource.password=123456
  9. #log
  10. logging.level.root=error
  11. logging.level.com.by=debug
  12. logging.level.cn.scl.logtimex.aop.LogTimeXAOP=debug

2.3 准备一张表测试数据

2.4 准备User实体类

   其中@TableName("`user`") 表示将User类和user表相关联

  1. @Data
  2. @AllArgsConstructor
  3. @NoArgsConstructor
  4. @Builder
  5. @TableName("`user`")
  6. public class User {
  7. private Integer id;
  8. private String name;
  9. private String sex;
  10. private Integer age;
  11. }

 2.5 准备一个UserMapper接口继承BaseMapper

  BaseMapper接口内置了许多CRUD的方法

  1. @Mapper
  2. public interface UserMapper extends BaseMapper<User> {
  3. }

三、测试代码

 3.1 根据id查询单个数据

  1. // 查询表中id=1 数据
  2. void m1(){
  3. User user = userMapper.selectById(1);
  4. }

 3.2 根据id查询多条数据

  1. /**
  2. * 2.根据id查询多条数据
  3. */
  4. @Test
  5. void m2() {
  6. //1. 定义一个数组储存所有的id
  7. int[] arr={1,2,3,4};
  8. ArrayList<Integer> list = new ArrayList<>();
  9. for (int i = 0; i <=arr.length; i++) {
  10. list.add(i);
  11. }
  12. List<User> users = userMapper.selectBatchIds(list);
  13. }

3.3 分页查询

  1. /**
  2. * 3.分页查询
  3. * QueryWrapper:适用于普通查询,可以进行等于、不等于、大于、小于、Like、In、Between等各种条件查询
  4. */
  5. @Test
  6. void m3() {
  7. // 两个参数,第一个参数为当前页,第二个参数为每页显示多少条数据
  8. Page<User> page = new Page<>(1,2);
  9. // 小于
  10. QueryWrapper<User> id = new QueryWrapper<User>().le("id", 4);
  11. IPage<User> userIPage = userMapper.selectPage(page,id);
  12. }

 3.4 修改数据

  1. /**
  2. * 4 修改
  3. */
  4. @Test
  5. void m4() {
  6. User user = User.builder().id(1).name("杨逍").age(18).build();
  7. userMapper.updateById(user);
  8. int a=10;
  9. }

 3.5 根据不同的条件删除数据

  1. /**
  2. * 5. 根据不同条件删除数据
  3. * eq 表示等于
  4. */
  5. @Test
  6. void m5() {
  7. QueryWrapper<User> queryWrapper = new QueryWrapper<User>().eq("id", 1);
  8. // userMapper.deleteById(1); 功能单一
  9. int i = userMapper.delete(queryWrapper);
  10. if (i > 0) {
  11. System.out.println("删除id为" + i + "的数据成功");
  12. }
  13. }

3.6 插单条数据

  1. /**
  2. * 6.插入数据
  3. */
  4. @Test
  5. void m6() {
  6. User user = User.builder().name("杨逍").age(18).build();
  7. int i = userMapper.insert(user);
  8. if (i > 0) {
  9. System.out.println("插入数据成功"+i);
  10. }
  11. }

四、源码参考

 源代码 我已放到云效,https://codeup.aliyun.com/62858d45487c500c27f5aab5/springboot-mybatis-plus.git

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/665641
推荐阅读
相关标签
  

闽ICP备14008679号