5、Mybatis-Plus 常用注解

第一篇:1、Mybatis-Plus 创建SpringBoot项目
第二篇:2、Mybatis-Plus 测试增、删、改、查
第三篇:3、Mybatis-Plus 自定义sql语句
第四篇:4、Mybatis-Plus 通用service的操作

1、表名(如果实体类和数据库中的表名不一致,会出现以下问题)

在这里插入图片描述
解决方法:在实体类中添加注解

@Data
//设置实体类所对应的表名:数据库中对应实体类的表名
@TableName("t_user")
public class User {

    private Long id;

    private String name;

    private Integer age;

    private String email;

}

再次执行代码

在这里插入图片描述
mybatis-plus根据哪里操作数据库中的表?
在这里插入图片描述


2、注解解决数据库字段和实体类字段问题,主键生成策略

2.1、直接在实体类上进行注解

package com.zyz.mybatisplus.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

@Data
//设置实体类所对应的表名:数据库中对应实体类的表名
//@TableName("t_user")
public class User {

    //如果设置了主键的id,则不会使用自增id

    /**
     * 1、mybatis-plus会默认id为主键。如果数据库中的表主键和实体类的主键不是id(默认两个字段一致)。
     * 需要在实体类字段上添加@TableId属性。
     *
     *  2、如果实体类字段的主键和数据库中表的主键不一致。@TableId注解的value属性用于指定主键的字段
     */
    //将属性对应的字段指定为主键

//    @TableId
//    private Long id;

            //如果只有一个属性,value可以省略 @TableId("uid")
//    @TableId(value = "uid")
//    private Long id;

    /**
     * type指定主键生成的策略。默认采用雪花算法
     * 采用数据库的自增策略:注意:数据库中的该字段设置了id自增,否则无效
     */

    @TableId(value = "uid",type = IdType.AUTO)
    private Long id;

    private String name;

    private Integer age;

    private String email;

}

2.2、全局配置,在yml文件中

#设置mybatis-plus的全局配置:
  global-config:
    db-config:
      #设置实体类对应数据库中表的统一前缀
      table-prefix: t_
      #配置mybatis-plus的主键策略
      id-type: auto

2.3、数据库的主键和实体类的主键保持一致。但是不是id的情况下、不进行注解配置。会出现的问题?

在这里插入图片描述

2.4、数据库的主键和实体类的主键不一致

在这里插入图片描述

2.5、如果自己设定了id的值 不会使用自增策略的值

3、当数据库中表的字段和实体类的字段不一一对应时

3.1 数据库字段

在这里插入图片描述

3.2 实体类字段

在这里插入图片描述

3.3 出现的错误

在这里插入图片描述

3.4、使用@TableField(“username”) 指定对应的字段名

在这里插入图片描述

3.5 测试结果

在这里插入图片描述

4、逻辑删除

4.1、在数据库表中新添加一个字段表示删除状态

4.2、在实体类属性中添加,同时注解@TableLogic

在这里插入图片描述

4.3 、测试结果

在这里插入图片描述


  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.Aholic

整理不易、多谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值