MyBatis框架学习(五)——MybatisPlus

本文详细介绍了如何使用MyBatisPlus进行SpringBoot项目的框架部署、数据存储、日志配置、自动填充、乐观锁实现、分页查询、逻辑删除以及条件构造器的使用。通过实例展示了各功能的代码实现和测试,帮助开发者快速掌握MyBatisPlus的常用操作。

官网:https://baomidou.com/ MyBatis Plus

1. 框架部署

使用 Spring Initializr 构建一个SpringBoot 项目,选则 spring web,引入的依赖如下所示

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.22</version>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.3</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
</dependency>

将原本的 application.properties 文件改为 application.yml,并配置数据库如下:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/novels?useUnicode=true&characterEncoding=utf8
    username: root
    password: ma123456

在数据库的URL中的3306后面加的 novels 是要指定连接的数据库。

2. 快速使用

2.1 创建存储类

在SpringBoot的启动类下面创建一个包 com.mr.pojo ,该包下面放置要存储数据的类,注意,该类的名称就是你要连接数据库中表的名称,否则会连接报错,比如我要存储的数据库中表是books,那么这里我就建立一个名为 Books.java 的类,内容如下

@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
public class Books {
   
   
    private int num;
    private String name;
    private String author;
}

2.2 创建映射

在SpringBoot的启动类下面创建一个包 com.mr.pojo ,该包下面放置要映射的接口,这我们创建一个名为 BookMapper 的接口,接口如下:

public interface BookMapper extends BaseMapper<Books> {
   
   }

当继承了 BaseMapper 类后,该接口就能够进行CRUD,即增删查改操作了。

除此之外还需要添加 @MapperScan("com.**.mapper") 到SpringBoot的启动类前面座位注解,表示扫描的映射文件在哪里,如果在这里要写全名的话,需要写 main/java 后面到映射文件的全部目录。

2.3 测试

在test中写上如下查询全部操作:

@SpringBootTest
class MergeMybatisPlusApplicationTests {
   
   

    @Autowired
    private BookMapper bookMapper;

    @Test
    void contextLoads() {
   
   
        List<Books> books = bookMapper.selectList(null);
        books.forEach(System.out::println);
    }
}

其中 selectList(null) 中的 null 其实应该写一个条件构造器,如果构造器为空,则查询全部。

3. 配置日志

application.yml 新的一行行首配置以下内容:

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

就能够得到日志的输出,如下所示:
在这里插入图片描述
上述日志输出能够显示查询的SQL语句是什么,连接类型是什么,查询到的内容是什么。

4. 自动填充数据

在工作中我们经常会对数据库的一个新数据以及数据的更新记录其初始化或者更新的时间,但是这种更新我们不希望每次都手动更新,而是希望在每次插入或更新数据时就自动更新时间的值,为此要用到MyBatis-plus的自动填充功能。

4.1 设置属性自动填充

我们对Books这个存储类

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值