1.表字段与编码属性设计不同步
MP给我们提供了一个注解@TableField
,使用该注解可以实现模型类属性名和表的列名之间的映射关系
2.编码中添加了数据库中未定义的属性
解决方案用到的还是@TableField
注解,它有一个属性叫exist
,设置该字段是否在数据库表中存在,如果设置为false则不存在,生成sql语句查询的时候,就不会再查询该字段了。
3.采用默认查询开放了更多的字段查看权限
解决方案是@TableField
注解的一个属性叫select
,该属性设置默认是否需要查询该字段的值,true(默认值)表示默认查询该字段,false表示默认不查询该字段。
4.表名与编码开发设计不同步
解决方案是使用MP提供的另外一个注解@TableName
来设置表与模型类之间的对应关系。
知识点1:@TableField
名称 @TableField 类型 属性注解 位置 模型类属性定义上方 作用 设置当前属性对应的数据库表中的字段关系 相关属性 value(默认):设置数据库表字段名称
exist:设置属性在数据库表字段中是否存在,默认为true,此属性不能与value合并使用
select:设置属性是否参与查询,此属性与select()映射配置不冲突
知识点2:@TableName
名称 @TableName 类型 类注解 位置 模型类定义上方 作用 设置当前类对应于数据库表关系 相关属性 value(默认):设置数据库表名称