SpringBoot的Mybatis-plus实战之基础知识

文章目录

在SpringBoot项目中使用Mybatis-plus,记录下来,方便备查。

MybatisPlus 介绍

为简化开发而生,官网:帮助文档

一、MyBatisPlus 集成步骤

主要是引入依赖和定义Mapper的继承

第一步、引入依赖

在pom文件中引入mybatis-plus依赖

powershell 复制代码
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3.1</version>
</dependency>

第二步、定义mapper

自定义的Mapper集成MybatisPlus提供的BaseMapper提供的接口。

MybatisPlus 通过扫描实体类,并基于反射获取实体类的信息作为数据库表信息。

java 复制代码
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

public interface UserMapper extends BaseMapper<User>{
}

反射原则

类名驼峰转下划线作为表名;

名为id的字段作为主键;

变量名驼峰转下划线作为表的字段名

二、注解

@TableName

顾名思义,用来指定表名

@Tableld

用来指定表中的主键字段信息

@TableId(value="id",type=)
AUTO 数据库自增,如 type=IdType.AUTO
INPUT 通过set方法自行输入
ASSIGN_ID 分配ID,接口IdentifierGenerator 的方法nextId来生成id,默认实现类是DefaultIdentifierGenerator雪花算法

@TableField

用来执行表中普通字段信息

成员变量名与数据库字段名不一致

成员变量名以is开头,且是布尔值

成员变量不是数据库字段,exit=false

三、配置文件

使用MybatisPlus时,可在properties文件中设置

powershell 复制代码
mybatis-plus:
  type-aliases-package: cn.henu.mp.domain.po #别名扫描包
  mapper-location:"clsspath*:/mapper/*.xml" #xml文件地址
  configuration:
    map-underscore-to-camel-case:true #是否开启下划线和驼峰映射
    cache-enabled:false #是否开启二级缓存
   global-config:
     db-config:
       id-type:assign-id #雪花算法
       undate-strategy:not_null #更新策略,只更新非空字段

四、加解密

实现步骤

第一步、在@TableName注解中添加 autoResultMap=true;

第二步、在加密字段 @TableField注解添加 typeHandler = AESEncryptHandler.class

以上两步,即可实现加解密。

相关推荐
Sherotree1 小时前
Google Antigravity——Agent 被提到主界面
前端·ide·后端·edge浏览器
2601_962056232 小时前
Spring Boot 入门 与 无法解析符号 springframework 的解决
java·spring boot·后端
你驴我2 小时前
WhatsApp 多账号场景下的会话归档与历史消息检索优化实践
后端·python
学长毕业设计3 小时前
基于SpringBoot的瑜伽馆网站的设计与实现(源码+文档+讲解视频)
java·spring boot·后端
Rain的Java大神之路3 小时前
PC版网站被狂刷怎么处理
java·数据库·redis·后端·mysql·web安全·运维开发
学长毕业设计6 小时前
基于springboot的云南中草药知识普及管理网站的设计与开发(源码+文档+讲解视频)
java·spring boot·后端
烂蜻蜓6 小时前
Flask入门教程(八):视图函数详解——请求处理与响应的核心
后端·python·flask
小江的记录本7 小时前
【AI Agent】《2026年9月 AI Agent全栈开发技术选型专项面试宝典》
java·spring boot·python·spring·ai·面试·ai编程
卷无止境7 小时前
当FastAPI遇上机器学习,一个脚手架工具能省下多少工夫
后端·python·fastapi