MybatisPlus的使用总结

一、使用的技术栈

1、后端使用SSM(这里的M是mybatisPlus)+SpringBoot进行开发
2、数据库使用MySQL
3、服务器使用docker部署代码
下文主要介绍MybatisPlus的运用

二、MybatisPlus的运用

2.1 MybatisPlus的介绍

MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
Mybatis-Plus 是 MyBatis 的一个增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MyBatis-Plus 已经封装好了一些 CRUD 方法,因此不需要再写 xml 了,仅仅通过少量配置即可实现单表大部分的CRUD操作。使用时直接调用这些方法就行。可以大大加快开发的效率。

2.2 MybatisPlus的基本使用
2.2.1 新建一个项目引入依赖

使用springboot3.x版本需要引入3.5.5版本的mp

<!--需要用3.5.5版本的mybatis-plus-->
		<dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.5</version>
        </dependency>
<!--下面是mybatis配置,实测需要导入-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>3.0.3</version>
        </dependency>
2.2.2 配置yml
# 配置数据源
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot-mysql?userSSL=false;serverTimezone=Asia/Shanghai
    username: root #填写自己的数据库username
    password: 123456 #填写自己的密码
mybatis-plus:
  # mapper配置文件
  mapper-locations: classpath:mapper/*.xml
  # resultType别名,没有这个配置resultType包名要写全,配置后只要写类名
  type-aliases-package: com.example.springboot01.entity
  configuration:
    # 日志的配置,直接添加即可,内部有自带配置项
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
2.2.3 配置启动类

在启动类上加上标签

@MapperScan("com.example.demo.mapper") // 填mapper/dao路径
2.2.4 常用方法

具体的CRUD方法可以查看下面这个文档
官方文档

2.2.5 遇到的坑

在使用MybatisPlus的过程中,笔者目前遇到的坑主要是没有映射好主键字段所导致的数据库主键过大,解决方法如下:
1、在实体类的主键字段上面加上@TableId(type = IdType.AUTO)注释,将数据库表主键映射到该属性上,IdType.AUTO确保数据库字段是自动递增的。
在这里插入图片描述
2、如果数据已经插入了过长主键主键的情况,如下图
在这里插入图片描述
在这种情况下,先删除掉过长主键的这两行数据(如果能清空这张表最好清空),然后打开DDL控制台(笔者这里使用的是datagrip,右键表名称新建查询控制台即可),使用

ALTER TABLE 【表名】 AUTO_INCREMENT = 【自增id初始值】

来修改主键递增的值,注意【自增id初始值】一定要大于现有id最大值,略大于即可,否则不生效。

2.3 总结

在本次项目中,团队使用了MybatisPlus框架来对数据库进行CRUD操作,由于其封装了单表的基础CRUD方法,大大简化了sql语句的编写工作,基本只有在联表查询的时候才会在xml里面去编写sql语句,加快了工作效率。

  • 25
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MyBatis-Plus(简称MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上简化了很多操作,提供了一些常用的功能,如分页、代码生成等,使得开发效率更高、更简洁。 下面是 MyBatis-Plus 的使用步骤: 1. 引入 MyBatis-Plus 的依赖 在 Maven 项目中,可以通过在 pom.xml 文件中添加以下依赖来引入 MyBatis-Plus: ``` <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.x.x</version> </dependency> ``` 2. 配置 MyBatis-Plus 在 Spring Boot 项目中,可以在 application.properties 或 application.yml 文件中添加以下配置来配置 MyBatis-Plus: ``` # 数据库连接配置 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/demo spring.datasource.username=root spring.datasource.password=root # MyBatis-Plus 配置 mybatis-plus.mapper-locations=classpath:mapper/*.xml mybatis-plus.type-aliases-package=com.example.demo.entity ``` 其中,mapper-locations 属性配置了 MyBatis 的 mapper 文件路径,type-aliases-package 属性配置了实体类所在的包路径。 3. 创建实体类 使用 MyBatis-Plus,需要创建一个实体类,并在类上添加 @TableName 注解,表示该实体类对应数据库中的表名。 ``` @TableName("user") public class User { private Long id; private String name; private Integer age; // 省略 getter 和 setter 方法 } ``` 4. 创建 Mapper 接口 创建一个 Mapper 接口,继承 BaseMapper 接口,该接口提供了一些常用的 CRUD 方法。 ``` public interface UserMapper extends BaseMapper<User> { } ``` 5. 使用 MyBatis-Plus 进行数据库操作 通过注入 UserMapper 接口实现对数据库的操作,例如: ``` @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public User getUserById(Long id) { return userMapper.selectById(id); } @Override public List<User> getUsers() { return userMapper.selectList(null); } @Override public void saveUser(User user) { userMapper.insert(user); } @Override public void updateUser(User user) { userMapper.updateById(user); } @Override public void deleteUser(Long id) { userMapper.deleteById(id); } } ``` 以上就是使用 MyBatis-Plus 的基本步骤,更多功能可以查看官方文档。 ### 回答2: MyBatis Plus是MyBatis的扩展库,提供了很多便捷的功能和增强的特性,可以简化MyBatis的开发流程。 1. 简化配置:MyBatis Plus提供了一个自动化的配置,只需要少量的MyBatis配置文件即可完成数据库的连接和基本的CRUD操作。 2. 支持代码生成:MyBatis Plus不仅可以通过简单的配置文件完成基本的CRUD操作,还可以通过代码生成器生成实体类、Mapper、Service以及Controller层的代码,减少手动编写重复代码的工作量。 3. 内置通用CRUD操作:不需要编写SQL语句,只需要简单的继承通用的BaseMapper接口,就可以实现基本的增删改查操作。 4. 支持分页查询:MyBatis Plus提供了内置的分页查询功能,可以方便地实现分页查询功能,并且支持多种数据库的分页查询方式。 5. 支持乐观锁和逻辑删除:MyBatis Plus提供了乐观锁和逻辑删除的支持,可以方便地实现并发控制和软删除功能。 6. 提供了丰富的查询条件封装:MyBatis Plus提供了Lambda表达式和QueryWrapper等查询条件封装,可以灵活地构建复杂的查询条件。 总之,MyBatis Plus是一个非常强大而且易于使用的数据库操作框架,可以大大简化开发人员的工作,并提高开发效率。无论是在小型项目还是大型项目中,都能发挥出很好的作用。 ### 回答3: MyBatis-Plus,简称为MP,是基于MyBatis的增强工具,它简化了MyBatis的开发流程,提供了更方便、更高效的开发方式。 使用MyBatis-Plus有以下几个步骤: 1. 引入依赖:在项目的pom.xml文件中添加MyBatis-Plus的依赖项,同时还需要引入MyBatis和数据库驱动的依赖。 2. 配置数据源:在项目的配置文件中配置数据源的相关信息,比如数据库的地址、用户名、密码等。 3. 创建实体类:根据数据库中的表结构,创建与之对应的实体类。可以使用注解或XML配置文件来映射实体类与表的关系。 4. 创建Mapper接口:为每个实体类编写对应的Mapper接口,使用MyBatis-Plus提供的注解来完成SQL语句的编写。 5. 进行CRUD操作:通过调用Mapper接口中的方法来实现增删改查的操作。MyBatis-Plus提供了丰富的方法,如insert、delete、update等,同时还支持条件查询、分页查询等操作。 6. 配置代码生成器:为了提高开发效率,可以使用MyBatis-Plus的代码生成器来自动生成Mapper接口和实体类的代码。只需要配置相应的参数,即可自动生成增删改查的方法。 总结来说,使用MyBatis-Plus可以极大地简化MyBatis的开发过程,提高开发效率。它提供了丰富的功能和便捷的操作方式,使得开发人员能够更专注于业务逻辑的实现。同时,MyBatis-Plus还完美地与Spring Boot集成,使得开发更加简单和高效。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值