MybatisPlus-注解

MybatisPlus常用注解

@TableName

属性 类型 必须指定 默认值 描述
value String "" 表名
schema String "" schema
keepGlobalPrefix boolean false 是否保持使用全局的 tablePrefix 的值(当全局 tablePrefix 生效时)
resultMap String "" xml 中 resultMap 的 id(用于满足特定类型的实体类对象绑定)
autoResultMap boolean false 是否自动构建 resultMap 并使用(如果设置 resultMap 则不会进行 resultMap 的自动构建与注入
excludeProperty String[] {} 需要排除的属性名
  •  数据库表相关

  • value 表名 
  • excludeProperty 需要排除的字段名

如我们继承了BaseMode,BaseModel中有创建时间和修改时间

MybatisPlus-注解_第1张图片

 而我们的Employee表字段没有修改时间此时我们可以用 excludeProperty 将其排除掉。

@TableId

属性 类型 必须指定 默认值 描述
value String "" 主键字段名
type Enum IdType.NONE 指定主键类型
  • 表主键标识
    
  • type标识主键生成策略

MybatisPlus-注解_第2张图片

@TableField

属性 类型 必须指定 默认值 描述
value String "" 数据库字段名
exist boolean true 是否为数据库表字段
condition String "" 字段 where 实体查询比较条件,有值设置则按设置的值为准,没有则为默认全局的 %s=#{%s}
update String "" 字段 update set 部分注入,例如:当在version字段上注解update="%s+1" 表示更新时会 set version=version+1 (该属性优先级高于 el 属性)
insertStrategy Enum FieldStrategy.DEFAULT

举例:NOT_NULL

insert into table_a(column) values (#{columnProperty})

updateStrategy Enum FieldStrategy.DEFAULT

举例:IGNORED

update table_a set column=#{columnProperty}

whereStrategy Enum FieldStrategy.DEFAULT

举例:NOT_EMPTY

where column=#{columnProperty}

fill Enum FieldFill.DEFAULT 字段自动填充策略
select boolean true 是否进行 select 查询
keepGlobalFormat boolean false 是否保持使用全局的 format 进行处理
jdbcType JdbcType JdbcType.UNDEFINED JDBC 类型 (该默认值不代表会按照该值生效)
typeHandler Class UnknownTypeHandler.class 类型处理器 (该默认值不代表会按照该值生效)
numericScale String "" 指定小数点后保留的位数

MybatisPlus-注解_第3张图片

  • value

        对应数据库字段名 如果你的字段是严格按照驼峰命名 会自动转换为下划线。               如 deptId => dept_id 如果属性名与数据库字段名不一致,请使用@TableField进行标识。

  • fill 自动填充

        字段填充策略。

MybatisPlus-注解_第4张图片 

MybatisPlus-注解_第5张图片

 在需要填充的字段上进行标识后,需要实现 MetaObjectHandler接口 覆写里面的insertFill 和 updateFill 方法

MybatisPlus-注解_第6张图片

 此时我们不传name字段

MybatisPlus-注解_第7张图片

 会为我们进行自动填充。

@Version

  • 描述:乐观锁注解、标记 @Verison 在字段上 

        1.首先注册乐观锁插件

MybatisPlus-注解_第8张图片

        2.在实体类上加上@version注解 对应表也需要对应字段

MybatisPlus-注解_第9张图片 

 接着我们进行修改操作。MybatisPlus-注解_第10张图片

 可以看到在where条件后加上了版本号的判断。

逻辑删除

首先在yml里面设置逻辑删除字段,数据库添加对应字段。

MybatisPlus-注解_第11张图片

 MybatisPlus-注解_第12张图片

 可以看到删除变成了更新。数据库逻辑删除字段变成了1 

MybatisPlus-注解_第13张图片

 此时我们在进行查询,我们刚刚删除的数据查询不到了。

MybatisPlus-注解_第14张图片

写在最后

        愿成长路上有你有我,回首往事,不因虚度年华而悔恨,也不因碌碌无为而羞耻。

你可能感兴趣的:(MybatisPlus,spring)