name
定義了被標註字段在數據庫表中所對應字段的名稱;數據庫
unique
表示該字段是否爲惟一標識,默認爲false。若是表中有一個字段須要惟一標識,則既能夠使用該標記,也能夠使用@Table標記中的@UniqueConstraint。.net
nullable
表示該字段是否能夠爲null值,默認爲true。blog
insertable
表示在使用「INSERT」腳本插入數據時,是否須要插入該字段的值。ci
updatable
表示在使用「UPDATE」腳本插入數據時,是否須要更新該字段的值。insertable和updatable屬性通常多用於只讀的屬性,例如主鍵和外鍵等。這些字段的值一般是自動生成的。get
columnDefinition(大多數狀況,幾乎不用)
表示建立表時,該字段建立的SQL語句,通常用於經過Entity生成表定義時使用。(也就是說,若是DB中表已經建好,該屬性沒有必要使用。)it
table
表示當映射多個表時,指定表的表中的字段。默認值爲主表的表名。io
length
表示字段的長度,當字段的類型爲varchar時,該屬性纔有效,默認爲255個字符。table
precision和scale
precision屬性和scale屬性表示精度,當字段類型爲double時,precision表示數值的總長度,scale表示小數點所佔的位數。test
columnDefinition方法
一、屬性爲Integer
@Column(nullable=false,columnDefinition=「INT default 0」)
private Integer commentApprove;
二、屬性爲String
@Column(columnDefinition=「varchar(128) default ‘hello’」)
private String test;
三、對於String類型的默認值,也能夠直接給屬性賦值,如:
private String userName=「藍色裂痕~」;
當添加時,若是userName爲空,則」藍色裂痕~」即爲該屬性的默認值。
@Column能夠標註在屬性前或getter方法前;
參考資料:https://blog.csdn.net/qq_16769857/article/details/80347459
https://blog.csdn.net/li_wen_jin/article/details/65626399