实体类与数据库表映射关系
使用mybatisPlus时,会确定实体类和数据的映射关系
具体的映射方法有两种
1、默认:采用驼峰映射规则
例如MyUserTable 对应的数据库表为 my_user_table ; TEMyUserTable 对应表名为t_e_my_user_table;
2、注解@TableName
在类名上方添加@TableName("my_user_table")
忽略某个实体类属性和数据库表字段之间的映射关系
问题描述
在开发中可能会遇到MyBatis-Plus使用实体类属性进行SQL操作,但是不用存到数据库中去查找,这时候我们的实体中有这个属性,但是数据库的表中没有这个字段(即:实体类属性非数据库表字段),如果不做处理就会报错。
API
@TableName
:数据库表相关@TableId
:表主键标识@TableField
:表字段标识@TableLogic
:表字段逻辑处理注解(逻辑删除)
解决方案
忽略映射字段时可以在实体类属性上使用以下注解:
@TableField(exist = false)
:表示该属性不为数据库表字段,但又是必须使用的。@TableField(exist = true)
:表示该属性为数据库表字段。
在实体类的属性上面加上这个注解后,此字段就不会映射数据库了。
@TableField(exist = false)
private Position position;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。