spring data jpa配置
阿新 • • 發佈:2018-11-09
spring data jpa 配置使用註解配置
- @JoinColumn 定義外來鍵關聯的欄位名稱
- name:目標表的欄位名
- referencedColumnName:本實體的欄位名,非必填,預設為本表的id
- unque:外來鍵是否唯一,false
- nullable:外來鍵欄位是否為空 true
- insertable:是否跟隨一起新增 true
- updateable:是否跟隨一起更新 true
- @OneToOne
- targetEntity:關聯目標實體,非必填,預設改欄位的型別
- cascade:級聯操作
- cascadeType.PERSIST:級聯新建
- CascadeType.REMOVE:級聯刪除
- CasCadeType.REFRESH:級聯重新整理
- CasecadeType.MERGE:級聯更新
- CasCadeType.ALL;四項全選
- 預設,關係表不會產生任何影響
- fetche:資料獲取方式
- EAGER:立即載入
- LAZE:懶載入
- optional:是否允許為空
- mappedBy:關聯關係被誰維護,非必填,一般不需要特別的制定
- 只有關係維護方才能操作兩者之間的關係,被維護方即使設定了維護方屬性進行儲存也不會更新外來鍵關聯。
- mappedby不能用@JoinColumn或者@JoinTable同時使用。
- mappdBy的值是指另一方的實體裡邊屬性的欄位,而不是資料庫欄位,也不是實體物件的名字。即另一方配置了@JoinColumn或者@JoinTable註解的屬性的欄位名稱
- orphanRemoval:是否級聯刪除,和[email protected]的效果一樣,只要配置了兩種的的一種,就會自動級聯刪除。
- 注:@OneToOne需要配置@JoinColumn一起使用,可以雙向關聯。
- @OneToMany和@ManyToOne與@OneToOne的屬性差不多,兩者合起來就是後者,需要配置@JoinColumn一起使用
- @OrderBy關聯查詢時排序,只有vlaue屬性
- @JoinTable關聯關係表,如果物件與物件之間有一個關聯關係表的時候,就會用到@JoinTable,一般與@ManyToMany一起使用
- name:中間關聯關係表名
- catalog:表的catalog
- schema:表的schema
- JoinColumn:主連結表的欄位(值為資料)
- JoinColumn:被聯機的表外來鍵欄位(值為陣列)