MyBatis-Plus常用注解
官方文档:
https://baomidou.com/introduce/
快速开始
1.引入 MyBatis-Plus Starter 依赖
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.7</version> </dependency>
2.自定义的Mapper继承MybatisPlus提供的BaseMapper接口
public interface UserMapper extends BaseMapper<User> { }
常用注解
MyBatisPlus通过扫描实体类,并基于反射获取实体类信息作为数据库表信息。
约定:
类名 驼峰转下划线作为表名
名为id的字段作为主键
变量名 驼峰转下划线作为表的字段名
常用注解:
@TableName: 用来指定表名
@TableId: 用来指定表中的主键字段信息
@TableFeild: 用来指定表中的普通的字段信息
@TableId(value = "id", Type = IdType.AUTO)
IdType枚举:
AUTO: 数据库自增长
INPUT: 通过set方法自行输入
ASSIGN_ID (默认): 分配ID,接口IdentufierGenerator的方法nextId来生成Id。默认实现类为DefaultIdentifiedGenerator雪花算法
使用@TableFeild的常见场景:
1. 成员变量名与数据库字段名不一致
@TableFeild("username")
private String name;
2.成员变量以is开头,且是布尔值
@TableFeild("is_married")
prviate Boolean isMarried;
3.成员变量名与数据库关键字冲突
@TableFeild("`order`") private Integer order;
4.成员变量不是数据库字段
// address不是数据库字段 @TableFeild(exist = false) private String address
标签:
Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!