MyBatis-Plus常用注解

一、@TableName

1.若实体类类型的类名和要操作的表的表名不一致,会出现什么问题?

我们将表user更名为t_user,测试查询功能就报错

结果:

 2.方法一

在实体类类型上添加@TableName("t_user"),标识实体类对应的表,即可成功执行SQL语句

3.方法二

在yml文件中进行配置将其成为默认,全局配置

 

二、 @TableId注解

引入

MyBatis-Plus在实现CRUD时,会默认将id作为主键列,并在插入数据时,默认 基于雪花算法的策略生成id

问题

若实体类和表中表示主键的不是id,而是其他字段,例如uid,MyBatis-Plus会自动识别uid为主 键列吗?

结果

 解决方法

三、雪花算法生成id,使用自增属性

mybatis-plus的使用生成的id为Long类型的,并且生成的都是随机的id,id是根据雪花算法随机生成的数字

方法一:yml形式

yml配置

方法二:注解形式

前提条件,在数据库中的表必须设置自定递增的属性,否则会报错

@TableName("t_user")
public class User {
    //将属性所对应的字段指定为主键,设置数据库与之对应
    //@tableID注解的value属性用于指定主键的字段,字段与字段之间的不同
    //mybatis默认用雪花算法的方式进行生成id
    //如何设置自动递增的策略
    //@TableId(VALUE):字符对应
    //@TableId(type);自动递增,前提条件,设置自增
    @TableId(value = "uid", type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

总结:

  • 注解的方式更有利于我们开发的便捷
  • @TableName和@TableId的注解解决了80%的问题
  • mybatis-plus升级并且简化的开发

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值