MyBatis-Plus生成sql语句时怎么知道表名和表的字段名,表的主键名的

MyBatis-Plus通过反射获取实体类的信息。

实体类的类名驼峰转下划线为表名

实体类的属性名驼峰转下划线为字段名

表的主键名默认为id

selectById就是基于这个id,select 查询字段 from user where id =?

自定义告诉mybatisplus数据库的表名,主键名,字段名

@TableName :指定数据库的表名

@TableId :指定表中的主键名

@TableFiled :指定表中的字段名
使用示例:

@TableId的属性type

如果数据库中id的策略是自增长,我们也需要给出type= IdType.AUTO,从而让mybatisplus知道数据库的id是自增长的,让mybatisplus在执行插入操作时忽略id字段,不要再给出id字段。如果不写这个注解,mybatisplus在执行插入操作时会有id字段,id字段的值由雪花算法得出,从而影响数据库的id自增长。
@TableFiled使用场景

相关推荐
GottdesKrieges9 小时前
OceanBase容量统计:租户、数据库、表大小
数据库·oceanbase
pan3035074799 小时前
mysql 回表查询(二次查询,如何检查,如何规避)
数据库·mysql
Michaelwubo9 小时前
elasticsearch-7.17.29 集群案例,k8s方式和原始方式
数据库
TDengine (老段)9 小时前
TDengine 选择函数 Last() 用户手册
大数据·数据库·sql·物联网·时序数据库·tdengine·涛思数据
little_xianzhong9 小时前
关于对逾期提醒的定时任务~改进完善
java·数据库·spring boot·spring·mybatis
Sally璐璐9 小时前
Go正则表达式实战指南
数据库·mysql·golang
小猪咪piggy10 小时前
【JavaEE】(23) 综合练习--博客系统
java·数据库·java-ee
bikong710 小时前
一种高效绘制余晖波形的方法Qt/C++
数据库·c++·qt
一叶飘零_sweeeet10 小时前
从 0 到 1 攻克订单表分表分库:亿级流量下的数据库架构实战指南
java·数据库·mysql·数据库架构·分库分表
xianyinsuifeng10 小时前
Oracle 10g → Oracle 19c 升级后问题解决方案(Pro*C 项目)
c语言·数据库·oracle