mybatisplus指定实体类属性不属于数据库列
时间: 2023-07-30 21:10:26 浏览: 99
MyBatis-Plus中提供了`@TableField`注解用于指定实体类属性不属于数据库表的列。常用的属性有:
- `exist`:指定该属性是否属于数据库表的列,默认为`true`。
- `value`:指定该属性对应的数据库表的列名,如果不指定则默认使用属性名作为列名。
- `select`:指定是否在SELECT语句中包含该属性,默认为`true`。
- `insert`:指定是否在INSERT语句中包含该属性,默认为`true`。
- `update`:指定是否在UPDATE语句中包含该属性,默认为`true`。
- `where`:指定该属性是否作为查询条件,默认为`false`。
举个例子,如果一个实体类中有一个属性`createTime`,但是在数据库表中并没有对应的列,我们可以使用`@TableField(exist = false)`注解来指定该属性不属于数据库表的列,如下所示:
```java
public class User {
private Long id;
private String name;
private Date createTime;
// createTime不属于数据库表的列,使用@TableField(exist = false)注解指定
@TableField(exist = false)
private String otherInfo;
// 省略getter和setter方法
}
```
这样,在进行MyBatis-Plus的CRUD操作时,就不会把`createTime`作为数据库表的列进行处理。
阅读全文