日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(7) ebj学习: jpa 一对一,一对多,多对多

發布時間:2024/1/23 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (7) ebj学习: jpa 一对一,一对多,多对多 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一 ?: 一對一

1 一對一主鍵關聯


Customer.java

import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToOne; import javax.persistence.PrimaryKeyJoinColumn;/*** 一對一主鍵關聯* **/ @Entity public class Customer {@Idprivate int id;private String name;@OneToOne@PrimaryKeyJoinColumnprivate CustomerNo customerNo;}
CustomerNo.java

import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToOne;/*** 一對一主鍵關聯* **/ @Entity public class CustomerNo {@Idprivate int id;private String sn;@OneToOne(mappedBy = "customerNo")private Customer customer; }
最后表結構



2 一對一外鍵關聯

Customer1.java

import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.OneToOne; import javax.persistence.PrimaryKeyJoinColumn;/*** 一對一外鍵關聯* **/ @Entity public class Customer1 {@Idprivate int id;private String name;@OneToOne@JoinColumn(name="customerNoId",unique=true)private CustomerNo1 customerNo1;}
CustomerNo1.java

import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToOne;/*** 一對一外鍵關聯* **/ @Entity public class CustomerNo1 {@Idprivate int id;private String sn;@OneToOne(mappedBy = "customerNo1")private Customer1 customer1; }
最后表結構



二 一對多

1?一對多單向關聯

Classes.java

import java.util.Set;import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany;/*** 一對多單向關聯* */ @Entity public class Classes {@Idprivate int id;private String name;@OneToManyprivate Set<Student> students; }
Student.java

package learning.oneToMany import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id;/*** 一對多單向關聯* */ @Entity public class Student {@Id@GeneratedValueprivate int id;private String name; }
最后表結構



2?一對多雙向關聯

Classes1.java

import java.util.Set;import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany;/*** 一對多雙向關聯* */ @Entity public class Classes1 {@Idprivate int id;private String name;@OneToMany(mappedBy="classes1")private Set<Student1> students1; }
Student1.java

package learning.oneToMany import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.ManyToOne; /*** 一對多雙向關聯* */ @Entity public class Student1 {@Id@GeneratedValueprivate int id;private String name;@ManyToOneprivate Classes1 classes1; }
最后表結構



三 多對多

Role.java

import java.util.Set;import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.JoinTable; import javax.persistence.ManyToMany;/*** 多對多關聯映射* */ @Entity public class Role {@Idprivate int id;private String name;@ManyToMany@JoinTable(name="T_Role_Staff") //中間表private Set<Staff> staffs; }
Staff.java

import java.util.Set;import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.ManyToMany;/*** 多對多關聯映射* */ @Entity public class Staff {@Idprivate int id;private String name;@ManyToMany(mappedBy="staffs")private Set<Role> roles; }

最后表結構





總結

以上是生活随笔為你收集整理的(7) ebj学习: jpa 一对一,一对多,多对多的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。