SpringBoot整合MybatisPlus基本的增删改查,女教师级教程

如皋娱乐新闻网 2025-09-01

ACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注', PRIMARY KEY (人口为120人id人口为120人) USING BTREE) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMICCREATE TABLE 人口为120人sys_dict_data人口为120人 (人口为120人data_id人口为120人 CHAR (19) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标记',人口为120人data_label人口为120人 CHAR (19) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '别号典标签', 人口为120人data_value人口为120人 CHAR (20) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '别号典绝对值', 人口为120人type_code人口为120人 CHAR (20) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '所属多种类型', 人口为120人is_default人口为120人 CHAR (1) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '是否是普通用户', 人口为120人update_by人口为120人 CHAR (19) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '简化人ID', 人口为120人update_name人口为120人 CHAR (19) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '简化人名字', 人口为120人update_time人口为120人 datetime DEFAULT NULL COMMENT '简化一段时间', 人口为120人create_by人口为120人 VARCHAR (255) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建者人ID', 人口为120人create_name人口为120人 CHAR (19) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建者人名字', 人口为120人create_time人口为120人 datetime DEFAULT NULL COMMENT '创建者一段时间', 人口为120人remark人口为120人 VARCHAR (255) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注', 人口为120人enable人口为120人 CHAR (1) CHARACTERSET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '是否是落成', PRIMARY KEY (人口为120人data_id人口为120人) USING BTREE) ENGINE = INNODB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMIC5|0在重大项目当中创建者相应的鉴躯类

通过观察SQL关键字发现两个表当中有很多相同的别号段,所有我们把相同的别号段这样一来出来,放置一个基蔼的鉴躯类当中,其他鉴躯类通过应用软件方式赚取公共的别号段。

5|1创建者基蔼鉴躯类package com.didiplus.common.base;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.TableField;import lombok.Data;import java.io.Serializable;import java.time.LocalDateTime;/*** Author: didiplus* Email: 972479352@qq.com* CreateTime: 2022/4/29* Desc: 基 蔼 鉴 躯 类*/@Datapublic class BaseDomain implements Serializable { /** * 创建者一段时间 */ @TableField(value = "create_time", fill = FieldFill.INSERT) private LocalDateTime createTime; /** * 创建者人 */ @TableField(value = "create_by", fill = FieldFill.INSERT) private String createBy; /** * 创建者人名字 */ @TableField(value = "create_name", fill = FieldFill.INSERT) private String createName; /** * 简化一段时间 */ @TableField(value = "update_time", fill = FieldFill.UPDATE) private LocalDateTime updateTime; /** * 简化人 */ @TableField(value = "update_by", fill = FieldFill.UPDATE) private String updateBy; /** * 简化人名字 */ @TableField(value = "update_name", fill = FieldFill.UPDATE) private String updateName; /** * 备注 */ private String remark;}

@TableField 是mybatisplus当中的一个记事,后面会详述到的。

基蔼鉴躯类创建者好了,接着我们把剩下的两个鉴躯类也一同创建者吧。

5|2SysDictType鉴躯类package com.didiplus.modules.sys.domain;import com.didiplus.common.base.BaseDomain;import com.didiplus.common.base.ValidGroup;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.Data;import javax.validation.constraints.*;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/25 * Desc: 别号典多种类型科技领域模型 */@Data@ApiModel(value = "别号典多种类型")public class SysDictType extends BaseDomain { /** * 标记 */ @Null(groups = ValidGroup.Crud.Create.class) @NotNull(groups = ValidGroup.Crud.Update.class,message = "别号典ID不用为空") @ApiModelProperty("ID") private String id; /** * 别号典名字 */ @NotBlank(message = "别号典名字必填项") @ApiModelProperty(value = "别号典名字",example = "用户ID") private String typeName; /** * 别号典多种类型 */ @NotBlank(message = "别号典序列不用为空") @ApiModelProperty(value = "别号典序列") private String typeCode; /** * 别号典所述 */ @ApiModelProperty(value = "别号典所述") private String description; /** * 别号典可用静止状态 */ @NotBlank(message = "别号典静止状态不用为空") @ApiModelProperty(value = "别号典静止状态") private Boolean enable;}5|3SysDictData鉴躯类package com.didiplus.modules.sys.domain;import com.baomidou.mybatisplus.annotation.TableField;import com.didiplus.common.base.BaseDomain;import com.didiplus.common.base.ValidGroup;import io.swagger.annotations.ApiModelProperty;import lombok.Data;import javax.validation.constraints.NotBlank;import javax.validation.constraints.NotNull;import javax.validation.constraints.Null;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: 别号典绝对值科技领域模型 */@Datapublic class SysDictData extends BaseDomain { /** * id 号码 */ @Null(groups = ValidGroup.Crud.Create.class) @NotNull(groups = ValidGroup.Crud.Update.class,message = "别号典资料ID不用为空") @ApiModelProperty("ID") @TableField(value = "data_id") private String dataId; /** * 别号典揭示 */ @NotBlank(message = "别号典资料名字必填项") @ApiModelProperty(value = "别号典资料名字") private String dataLabel; /** * 别号典绝对值 */ @NotBlank(message = "别号典资料绝对值不用为空") @ApiModelProperty(value = "别号典资料绝对值") private String dataValue; /** * 别号典多种类型 */ @ApiModelProperty(value = "别号典序列") @NotBlank(message = "别号典资料绝对值不用为空") private String typeCode; /** * 是否是为普通用户 */ @ApiModelProperty(value = "别号典序列") @NotBlank(message = "别号典资料绝对值不用为空") private String isDefault; /** * 是否是落成 */ @NotBlank(message = "别号典静止状态不用为空") @ApiModelProperty(value = "别号典资料静止状态") private Boolean enable;}6|0创建者DAO承袭MybatisPlus增强终端

为两个鉴躯类当中分别附加DAO承袭MybatisPlus增强终端,这样就可以应用软件了增删改查的功能了。

6|1SysDictTypeMapperpackage com.didiplus.modules.sys.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;import com.didiplus.modules.sys.domain.SysDictType;import org.apache.ibatis.annotations.Mapper;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: 别号典多种类型终端 */@Mapperpublic interface SysDictTypeMapper extends BaseMapper {}6|2SysDictDataMapperpackage com.didiplus.modules.sys.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;import com.didiplus.modules.sys.domain.SysDictData;import org.apache.ibatis.annotations.Mapper;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: 别号典资料终端 */@Mapperpublic interface SysDictDataMapper extends BaseMapper {}7|0进一步封装到Service层7|1定义Service终端当中的抽象概念作法SysDictDataServicepackage com.didiplus.modules.sys.service;import com.baomidou.mybatisplus.extension.service.IService;import com.didiplus.modules.sys.domain.SysDictData;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: */public interface SysDictDataService extends IService {}SysDictTypeServicepackage com.didiplus.modules.sys.service;import com.baomidou.mybatisplus.extension.service.IService;import com.didiplus.modules.sys.domain.SysDictType;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: */public interface SysDictTypeService extends IService {}7|2借助于Service终端当中的作法SysDictTypeServiceImplpackage com.didiplus.modules.sys.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import com.didiplus.modules.sys.domain.SysDictType;import com.didiplus.modules.sys.mapper.SysDictTypeMapper;import com.didiplus.modules.sys.service.SysDictTypeService;import org.springframework.stereotype.Service;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: */@Servicepublic class SysDictTypeServiceImpl extends ServiceImpl implements SysDictTypeService {}SysDictDataServiceImplpackage com.didiplus.modules.sys.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import com.didiplus.modules.sys.domain.SysDictType;import com.didiplus.modules.sys.mapper.SysDictTypeMapper;import com.didiplus.modules.sys.service.SysDictTypeService;import org.springframework.stereotype.Service;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: */@Servicepublic class SysDictTypeServiceImpl extends ServiceImpl implements SysDictTypeService {}8|0在掌控层上进行增删改查操作8|1SysDictTypeControllerpackage com.didiplus.modules.sys.controller;import com.didiplus.common.base.ValidGroup;import com.didiplus.modules.sys.domain.SysDictType;import com.didiplus.modules.sys.service.SysDictTypeService;import io.swagger.annotations.Api;import io.swagger.annotations.ApiOperation;import io.swagger.v3.oas.annotations.parameters.RequestBody;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.validation.annotation.Validated;import org.springframework.web.bind.annotation.*;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/25 * Desc: 资料别号典掌控支架 */@RestController@Api(tags = "资料别号典")@RequestMapping("/api/sys/dictType")public class SysDictTypeController { @Autowired SysDictTypeService sysDictTypeService; @ApiOperation("别号典附加") @PostMapping("/add") public String add(@Validated(value = ValidGroup.Crud.Create.class) @RequestBody SysDictType sysDictType) { return sysDictTypeService.save(sysDictType)? "附加取得成功":"附加告终"; } @ApiOperation("别号典简化") @PutMapping("/edit") public String edit(@Validated(value = ValidGroup.Crud.Update.class) @RequestBody SysDictType sysDictType) { return sysDictTypeService.updateById(sysDictType)? "简化取得成功":"简化告终"; } @ApiOperation("别号典删除") @DeleteMapping("/del/{id}") public String del( @PathVariable String id) { return sysDictTypeService.removeById(id)? "删除取得成功":"删除告终"; }}躯验效果新增资料 简化资料 删除资料 9|0启动时复合功能

定律:

借助于元对象处理支架终端:com.baomidou.mybatisplus.core.handlers.MetaObjectHandler记事复合别号段 @TableField(.. fill = FieldFill.INSERT) 生成支架策略性之外也可以配置!9|1自定义借助于类 DomainInterceptorpackage com.didiplus.common.web.interceptor;import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;import org.apache.ibatis.reflection.MetaObject;import org.springframework.stereotype.Component;import java.time.LocalDateTime;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/5/4 * Desc: 别号 段 填 充 拦 截 支架 */@Componentpublic class DomainInterceptor implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { createField(metaObject); } @Override public void updateFill(MetaObject metaObject) { updateField(metaObject); } /** * @Field 创建者一段时间 * */ public void createField(MetaObject metaObject){ this.strictInsertFill(metaObject,"createTime", LocalDateTime.class,LocalDateTime.now()); } /** * @Field 简化一段时间 * */ public void updateField(MetaObject metaObject) { this.strictUpdateFill(metaObject,"updateTime",LocalDateTime.class,LocalDateTime.now()); }}10|0分页查询10|1附加分页的软件package com.didiplus.common.config;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/5/4 * Desc: mybatis-plus分页的软件 */@Configurationpublic class MyBatisPlusConfig { /** * mybatis-plus分页的软件 */ @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return interceptor; }}10|2定义分页终端package com.didiplus.modules.sys.service;import com.baomidou.mybatisplus.core.metadata.IPage;import com.baomidou.mybatisplus.extension.service.IService;import com.didiplus.common.web.domain.PageDomain;import com.didiplus.modules.sys.domain.SysDictType;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: 资料别号典多种类型增值类 */public interface SysDictTypeService extends IService { IPage page(PageDomain pageDomain);}10|3借助于分页终端package com.didiplus.modules.sys.service.impl;import com.baomidou.mybatisplus.core.metadata.IPage;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import com.didiplus.common.web.domain.PageDomain;import com.didiplus.modules.sys.domain.SysDictType;import com.didiplus.modules.sys.mapper.SysDictTypeMapper;import com.didiplus.modules.sys.service.SysDictTypeService;import org.springframework.stereotype.Service;import javax.annotation.Resource;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/4/29 * Desc: */@Servicepublic class SysDictTypeServiceImpl extends ServiceImpl implements SysDictTypeService { @Resource SysDictTypeMapper sysDictTypeMapper; @Override public IPage page(PageDomain pageDomain) { IPage page = new Page<>(pageDomain.getPage(),pageDomain.getLimit()); return sysDictTypeMapper.selectPage(page,null); }}10|4掌控层加载@RestController@Api(tags = "资料别号典")@RequestMapping("/api/sys/dictType")public class SysDictTypeController { @Autowired SysDictTypeService sysDictTypeService; @ApiOperation("别号典分页查询") @GetMapping public IPage list(@RequestBody PageDomain pageDomain){ return sysDictTypeService.page(pageDomain); }}

PageDomain定义了分页接收的两个参仅

PageDomain类

package com.didiplus.common.web.domain;import lombok.Data;/** * Author: didiplus * Email: 972479352@qq.com * CreateTime: 2022/5/4 * Desc: 分 页 参 仅 封 装 */@Datapublic class PageDomain { /** * 当前页 */ private Integer page; /** * 开本仅量 */ private Integer limit;}10|5躯验效果

下一篇,我们继续来学习mybatisPlus的代码生成支架

长沙治疗白癜风医院哪好
钦州哪家治疗白癜风医院好
西安白癜风医院
腹部疼痛
血友病
急支糖浆有什么作用
小儿脑炎
拉肚子是什么原因
相关阅读

去日本深造家里给了我多少钱

音乐 2025-10-22

家里就缺少了30万日元! 以及半年费用下到宿费 在遥近的15年(7年前),我妈在当中国银行汇完半年费用之前,又取了30万日元的保证金给我,然后我就揣着这30万日元去韩

伴娘藏完鞋就走了,众人找不到鞋急坏新娘,网友:能嫁出去输我输

图片 2025-10-22

MLT-,美好有四大喜多事,其中所有一项就是洞房花烛黄昏,在人的这些年来,无论男女,婚后都是一件可以扭曲美好放向的大多事,于是以因为此,才有了那句话:男怕送入错行,女怕嫁错郎。 在

开心笑话:同窗把他哥介绍给我,见面那天我们约在了一家咖啡厅

星闻 2025-10-22

学姐把他哥介绍给我,见面那天我们达在了主营咖啡厅,他比我原定到一会。我去了见到本人后,心里窃喜,比我显然的好。他把果盘放于我居然,知道是借此机会为我点的。我拿了个圣女果,想着得淑女点,留个好印象

如何保持曾一度、持续、稳定的努力?

影视 2025-10-22

常形样式,甚至一种信仰? 这不是什么转成功学,只是严肃对待生活平常的一种形样式,不屈不挠的远距离也不也许那些执着的远距离。 我们都想到,严肃生活平常的人才许多人被严肃对待。

儿子结婚,老婆变着法子问儿媳要钱,儿媳:我没义务帮你养小儿子

八卦 2025-10-22

人们常却说只有狠心的妻侄,不了有狠心的爹娘。可怜天下家民心,这些话都阐明家人对妻侄的无限关爱,妻侄再次旦,来作的再次不对,家人都可以宽恕,几乎带进了普遍性的明白。 为此,妻

友情链接