星空网 > 软件开发 > Java

Hibernate —— 映射关联关系(附录)

一、单向的多对一

1.建表语句

CREATE TABLE customer ( customer_id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY ,)CREATE TABLE `order` ( order_id  INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, customer_id INT(11))

2.Intellij Idea 操作

Hibernate —— 映射关联关系(附录)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

3.Order.hbm.

<hibernate-mapping>  <class name="com.nucsoft.hibernate.Order" table="order" schema="hibernate">    <id name="orderId">      <column name="order_id" sql-type="int(11)"/>      <generator class="native"/>    </id>    <many-to-one name="customer" class="com.nucsoft.hibernate.Customer">      <!-- 外键名称 -->      <column name="customer_id" not-null="true"/>    </many-to-one>  </class></hibernate-mapping>

二、双向的多对一

1.建表语句和单向的多对一相同

2.Intellij Idea 操作

Hibernate —— 映射关联关系(附录)

3.生成的实体

public class Customer {  private Integer customerId;  private Set<Order> orders = new HashSet<>();//注意进行初始化}public class Order {  private Integer orderId;  private Customer customer;}

4.hbm 文件

<hibernate-mapping>  <class name="com.nucsoft.hibernate.Customer" table="customer" schema="hibernate">    <id name="customerId">      <column name="customer_id" sql-type="int(11)"/>      <generator class="native"/>    </id>    <set name="orders" inverse="true">      <key>        <column name="customer_id" not-null="true"/>      </key>      <one-to-many not-found="ignore" class="com.nucsoft.hibernate.Order"/>    </set>  </class></hibernate-mapping><hibernate-mapping>  <class name="com.nucsoft.hibernate.Order" table="order" schema="hibernate">    <id name="orderId">      <column name="order_id" sql-type="int(11)"/>      <generator class="native"/>    </id>    <many-to-one name="customer" class="com.nucsoft.hibernate.Customer">      <column name="customer_id" not-null="true"/>    </many-to-one>  </class></hibernate-mapping>

三、基于外键的双向一对一

1.建表语句

CREATE TABLE department(  dept_id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,  manager_id_fk INT(11));CREATE TABLE manager(  manager_id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,);

2.生成的实体

public class Department {  private Integer deptId;  private Manager manager;}public class Manager {  private Integer managerId;  private Department dept;}

3.hbm文件

<hibernate-mapping>  <class name="com.nucsoft.hibernate.Department" table="department" schema="hibernate">    <id name="deptId" column="dept_id">      <generator class="native"/>    </id>    <many-to-one name="manager" class="com.nucsoft.hibernate.Manager" column="manager_id_fk" unique="true"/>  </class></hibernate-mapping><hibernate-mapping>  <class name="com.nucsoft.hibernate.Manager" table="manager" schema="hibernate">    <id name="managerId" column="manager_id">      <generator class="native"/>    </id>    <one-to-one name="dept" class="com.nucsoft.hibernate.Department" property-ref="manager"/>  </class></hibernate-mapping>

四、基于主键的双向一对一

1.建表语句

CREATE TABLE department ( dept_id  INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,);CREATE TABLE manager ( manager_id  INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,);

2.生成的实体

public class Department {  private Integer deptId;  private Manager manager;}public class Manager {  private Integer managerId;  private Department dept;}

3.hbm文件

<hibernate-mapping><class name="com.nucsoft.hibernate.Department" table="department" schema="hibernate">  <id name="deptId" column="dept_id">    <generator class="foreign">      <param name="property">manager</param>    </generator>  </id>  <one-to-one name="manager" class="com.nucsoft.hibernate.Manager" constrained="true"/></class></hibernate-mapping><hibernate-mapping><class name="com.nucsoft.hibernate.Manager" table="manager" schema="hibernate">  <id name="managerId" column="manager_id">    <generator class="native"/>  </id>  <one-to-one name="dept" class="com.nucsoft.hibernate.Department"/></class></hibernate-mapping>

五、单向n对n

1.建表语句

CREATE TABLE category ( category_id  INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,);CREATE TABLE item ( item_id  INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,);CREATE TABLE categories_items ( category_id INT(11) NOT NULL, item_id   INT(11) NOT NULL);

2.Intellij Idea 操作

Hibernate —— 映射关联关系(附录)

六、双向 n 对 n

1.建表语句和单向 n 对 n 相同

2.Intellij Idea 操作

Hibernate —— 映射关联关系(附录)



原标题:Hibernate —— 映射关联关系(附录)

关键词:Hibernate

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流