@TableField(fill=Fieldfill.INSERT,select=false)
时间: 2023-10-12 13:46:35 浏览: 301
@TableField(fill=FieldFill.INSERT, select=false) 是 MyBatis-Plus 框架中用于指定数据库字段填充和查询属性的注解。
其中,fill 属性用于指定数据库字段填充的方式,FieldFill 枚举类型可以有以下取值:
- FieldFill.DEFAULT:默认值,不进行填充
- FieldFill.INSERT:在插入操作时进行填充
- FieldFill.UPDATE:在更新操作时进行填充
- FieldFill.INSERT_UPDATE:在插入和更新操作时进行填充
select 属性用于指定该字段是否可被查询,默认为 true。如果 select=false,则该字段不会参与查询操作。
举个例子,假设有一个 User 实体类,其中有一个 createTime 字段,我们希望在插入操作时自动填充该字段的值,并且在查询操作时不返回该字段的值。可以使用 @TableField 注解进行配置,示例如下:
```java
public class User {
private Long id;
@TableField(fill=FieldFill.INSERT, select=false)
private Date createTime;
// 省略其他属性和方法
}
```
这样,在插入新的 User 对象时,createTime 字段会被自动填充为当前时间;而在查询操作时,返回的 User 对象中不包含 createTime 字段。
需要注意的是,@TableField(fill=FieldFill.INSERT, select=false) 注解是针对 MyBatis-Plus 框架的特定功能而设计的,用于指定字段填充和查询属性。
阅读全文