IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Mybatis_plus的注解 -> 正文阅读

[Java知识库]Mybatis_plus的注解

当你修改了数据库中的
表名字时候
在这里插入图片描述
通过TableName进行配制,告诉你这个实体类和新的表产生了新的表明。

在这里插入图片描述
数据库的一些特点优化。
在这里插入图片描述

雪花算法
在这里插入图片描述
解决Id冲突问题。
在这里插入图片描述
这样可以启动雪花算法。

雪花算法一定要配合
在这里插入图片描述
这个进行使用,这样告诉它这是id
在这里插入图片描述
或者直接加一个映射,将id映射到数据库中的uid上去。
在这里插入图片描述
这是主键自增策略,记得需要数据库去配合,
数据库里设置好自增这个策略。

可以在配制文件中设置好
在这里插入图片描述
在这里插入图片描述
这个是全局自增策略,让全局所有id都是自增状态。

设置新增时间和建立时间

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可以修正好数据库和实类中数据名不一样的问题。
在这里插入图片描述
这样就可以随着更新而更新了,比较稳定一些。
在这里插入图片描述

顺手把currentTIMESTAMP也给勾选上。
这样实际上它是根据维护表时候就会进行更新。

刚才说的是从数据库角度怎么增加
我们从服务层角度做这些也是可以的

在这里插入图片描述
第一步是加注解
第二部是创建Handler类
在这里插入图片描述
通过实现接口的方式,你来告诉他们,怎么进行自动更新。
在这里插入图片描述
实现处理好这两个接口就可以了

在这里插入图片描述
这就是在业务层进行处理的一个方法。
在这里插入图片描述
自动对某个数值进行填充。
1.首先要加上那个注解
2.我们再handler接口中进行处理
3.我们重写接口中方法,设置填充什么
4,为了进行优化,我们会对所有类进行判断
5.判断这个实体里面是不是真的有这个属性,有这个属性再进行填充。

在这里插入图片描述
判断一下我们动的那个属性有没有被赋值
如果没有,我们再进行填充,不然的话就是多此一举。

在这里插入图片描述
逻辑删除,很像数据被放进了回收站,以后还可以被找回来。

MYSQL底层没有boolean值
实际上用的tinyint作为boolean值
在这里插入图片描述

逻辑删除表示,表示这个是不是逻辑上被删除了。
需要给is_deleted一个默认值为0
说明没被删除同时在实体类中去建立一个映射
在这里插入图片描述
这样就可以进行逻辑删除了。
这样他会默认将is_delete从0 变成1
默认这个表被删除了。
当然使用前要将所有is_delete = 0全都设置好。
在这里插入图片描述
持久层分页功能
1.首先建立一个类,配置类
在这里插入图片描述

在这里插入图片描述
将持久层配制都放这里。

@Configuration
@MapperScan("com.atguigu.mybatisplus.mapper")
public class MybatisPlusConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}

配制一下分页
然后配制完就可以直接用了
比如在Test里面

package com.atguigu.mybatisplus;

import com.atguigu.mybatisplus.entity.User;
import com.atguigu.mybatisplus.mapper.UserMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import javax.annotation.Resource;
import java.util.List;

@SpringBootTest
public class InterceptorTests {

    @Resource
    private UserMapper userMapper;

    @Test
    public  void testSelectPage(){

        Page<User> pageParam = new Page<>(1, 5);//分页对象,查询第一,每页5条
        userMapper.selectPage(pageParam, null);

        List<User> users = pageParam.getRecords();//当前页码下所有记录
        users.forEach(System.out::println);

        long total = pageParam.getTotal();//一共能拿到多记录
        System.out.println(total);

        boolean bn = pageParam.hasNext();
        System.out.println("下一页?" + bn);//有没有下一页

        boolean bp = pageParam.hasPrevious();
        System.out.println("上一页?" + bp);
    }

    @Test
    public void testSelectPageByAge(){

        Page<User> pageParam = new Page<>(1, 5);
        userMapper.selectPageByAge(pageParam, 400);

        List<User> users = pageParam.getRecords();
        users.forEach(System.out::println);
    }
}

或者说我们利用xml进行配制
直接在UserMapper中加一个方法
然后实现了就行
在这里插入图片描述

在UserMapper。xml中去实现这个方法

或者使用resultMap对结果的列进行映射。
在这里插入图片描述

在这里插入图片描述
或者在这里直接给一个别名进行处理就行了。

结果集合映射方法
https://blog.csdn.net/qq_42780864/article/details/81429114

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-08-22 13:25:07  更:2021-08-22 13:25:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 9:26:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码