java開發MyBatis中常用plus實體類註解符詳解
mybatis-plus常用註解符
1. 表名註解(@TableName)
作用:實體類和數據庫中表建立對應關系:如
@TableName("thotset") public class HotsetEntity implements Serializable { private static final long serialVersionUID = 1L; private Integer fclass; private Integer fpwid; @JsonFormat(pattern = "yyyy-MM-dd") private Date fbdate; @JsonFormat(pattern = "yyyy-MM-dd") private Date fedate; }
代表:HotsetEntity 對應數據庫中表為thotset
2. 主鍵註解(@TableId)
作用:標識實體類的屬性對應的是表中的主鍵,還配置主鍵的生成策略,如:
@TableName("tsvbase") public class PaintLifeEntity implements Serializable { private static final long serialVersionUID = 1L; @TableId(type = IdType.AUTO) private String recid; private String fcode; private String fname; }
代表:recid是表中的主鍵,主鍵的生成策略為自增類型。
在mybaits-plus中主鍵生成策略及註意事項
IdType.ASSIGN_ID
: 主鍵類型為長整型或字符串,使用這類主鍵時要註意,在前端長整形在數據轉換時和整型長度不匹配問題,會引發錯誤。
IdType.ASSIGN_UUID
:主鍵類型為String,為32為不重復字符串。註意該字符串為亂序,使用它時註意一條記錄,頁面刷新後新增的記錄並非最後一條或第一條,經常找不到新增的記錄,維護時用戶體驗很差。
IdType.AUTO
:自增;
IdType.input
: 插入數據前需要使用其他方式得到主鍵,將得到的數據賦值到主鍵上。
IdType.NONE
:無狀態,類同於Input
註 mybatis-plus其他主鍵註解在高版本已經廢棄
3. 屬性註解(@TableField)
作用:該屬性非主鍵屬性,解決屬性名與字段名不匹配問題、屬性是否是數據表中字段、insert、update生成策略等。如:
@TableName("thotset") public class HotsetEntity implements Serializable { private static final long serialVersionUID = 1L; private Integer fclass; private Integer fpwid; @TableField(vlaue="fb_date") private Date fbdate; @TableField(exist=false) private Date fedate; }
第一個註解代表屬性fbDate對應的數據庫字段名為fb_date
第二個註解代表fedate屬性不與表中的字段匹配,在新增、修改時,不用去匹配
常用的就這三個,其他註解不再詳細描述。
以上就是java開發MyBatis常用plus實體類註解符詳解的詳細內容,更多關於MyBatis常用plus實體類註解的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- Mybatis-plus使用註解 @TableField(exist = false)
- MyBatis-Plus實現字段自動填充功能的示例
- @TableName註解和@Table的區別及說明
- Mybatis Plus使用@TableId之坑及解決
- mybatis-plus IdWorker生成的Id和返回給前臺的不一致的解決