1. 程式人生 > >spring data jpa配置

spring data jpa配置

spring data jpa 配置使用註解配置

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