主要注釋到實體類上的注解:
@TableName(value = …)
當數據庫名與實體類名不一致或不符合駝峰命名時,需要在此注解指定表名
@TableId(type = …)
指定實體類的屬性為對應的主鍵,主要有以下幾種:
復制代碼
// 數據庫ID自增
IdType.AUTO
// 該類型為未設置主鍵類型(默認)
IdType.NONE
/**
* 用戶輸入ID
* <p>該類型可以通過自己注冊自動填充插件進行填充</p>
*/
IdType.INPUT
/* 以下3種類型、只有當插入對象ID 為空,才自動填充。 */
//1.全局唯一ID (idWorker)
IdType.ID_WORKER
//2.全局唯一ID (UUID)
IdType.UUID
//3.字符串全局唯一ID (idWorker 的字符串表示)
IdType.ID_WORKER_STR
復制代碼
@TableField注解
1、 主要用來解決實體類的字段名與數據庫中的字段名不匹配的問題(數據庫user_addr,字段useraddr未駝峰)
2、 實體類中的屬性字段在表中不存在的問題
常用:
// 用來解決數據庫中的字段和實體類的字段不匹配問題
@TableField(value = "age")
// 用來解決實體類中有的屬性但是數據表中沒有的字段
@TableField(exist = false) // 默認為true
如不指定,出現以下的異常:BadSqlGrammarException
// 查詢時不返回該字段,默認true,和@TableId作用在同一個字段上時失效
@TableField(select = false)