1. 程式人生 > >Hibernate 對映關係 ---One2Many 雙向關聯

Hibernate 對映關係 ---One2Many 雙向關聯

一種商品類別下有多個商品,多個商品對應同一個商品類別,這種關係就是一對多雙向關聯。

 

商品類:

[java]  view plain copy
  1. package com.pojo;  
  2. /** 
  3.  * Product entity. 
  4.  *  
  5.  * @author MyEclipse Persistence Tools
     
  6.  */  
  7. public class Product implements java.io.Serializable {  
  8.     private static final long serialVersionUID = -7963752710605063544L;  
  9.     private 
    int id;  
  10.     private String productname;  
  11.     private String remark;  
  12.     // 多對一  
  13.     private Category category;  
  14.     public int getId() {  
  15.         return id;  
  16.     }  
  17.     public void setId(int id) {  
  18.         this.id = id;  
  19.     }  
  20.     public Category getCategory() {  
  21.         return category;  
  22.     }  
  23.     public void setCategory(Category category) {  
  24.         this.category = category;  
  25.     }  
  26.     public Product() {  
  27.     }  
  28.     public String getProductname() {  
  29.         return this.productname;  
  30.     }  
  31.     public void setProductname(String productname) {  
  32.         this.productname = productname;  
  33.     }  
  34.     public String getRemark() {  
  35.         return this.remark;  
  36.     }  
  37.     public void setRemark(String remark) {  
  38.         this.remark = remark;  
  39.     }  
  40. }  

 

商品類別:

[java]  view plain copy
  1. package com.pojo;  
  2. import java.util.HashSet;  
  3. import java.util.Set;  
  4. /** 
  5.  * Category entity. 
  6.  *  
  7.  * @author MyEclipse Persistence Tools 
  8.  */  
  9. public class Category implements java.io.Serializable {  
  10.     private static final long serialVersionUID = -666185106951167028L;  
  11.     private int id;  
  12.     private String name;  
  13.     private String mark;  
  14.     // 集合,一對多  
  15.     private Set<Product> products = new HashSet<Product>();  
  16.     public int getId() {  
  17.         return id;  
  18.     }  
  19.     public void setId(int id) {  
  20.         this.id = id;  
  21.     }  
  22.     public Set<Product> getProducts() {  
  23.         return products;  
  24.     }  
  25.     public void setProducts(Set<Product> products) {  
  26.         this.products = products;  
  27.     }  
  28.     public Category() {  
  29.     }  
  30.     public String getName() {  
  31.         return this.name;  
  32.     }  
  33.     public void setName(String name) {  
  34.         this.name = name;  
  35.     }  
  36.     public String getMark() {  
  37.         return this.mark;  
  38.     }  
  39.     public void setMark(String mark) {  
  40.         this.mark = mark;  
  41.     }  
  42. }  

 

XML配置檔案,一對多的關係:

[xhtml]  view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  
  3. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
  4. <!--  
  5.     Mapping file autogenerated by MyEclipse Persistence Tools 
  6. -->  
  7. <hibernate-mapping>  
  8.     <class name="com.pojo.Category" table="CATEGORY" schema="ZM">  
  9.         <id name="id" type="java.lang.Integer">  
  10.             <column name="ID" precision="8" scale="0" />  
  11.             <generator class="increment" />  
  12.         </id>  
  13.         <property name="name" type="java.lang.String">  
  14.             <column name="NAME" length="100" />  
  15.         </property>  
  16.         <property name="mark" type="java.lang.String">  
  17.             <column name="MARK" length="100" />  
  18.         </property>  
  19.           
  20. 相關推薦

    Hibernate 對映關係 ---One2Many 雙向關聯

    一種商品類別下有多個商品,多個商品對應同一個商品類別,這種關係就是一對多雙向關聯。   商品類: [java]  view plain copy p

    Hibernate 對映關係 ---Many2Many 雙向關聯

    以Student和Course為例,一個學生可以選多門課程,一門課程也可以被多個學生選取; 持久化類Student: [java]  view plain copy

    Hibernate 對映關係 ---One2Many單向關聯

    一個商品類別下對應著多個商品,在關聯關係裡,就是以集合的方式關聯,一般是Set集合   [java]  view plain copy package&n

    Hibernate 對映關係 ---Many2Many 單向關聯

    一個學生可以有多個老師,一個老師也可以有多個學生,所以老師和學生之間的關係就是多對多的關係,這樣就需要建立一箇中間的關聯表來儲存關聯資訊。 [java]  view plain copy

    hibernate one2many (雙向關聯)

    gif pro ng- utf-8 getc div sed .class blog 跟單向關聯僅有幾處不同: 1從多的一方加入新的屬性 package com.cnblogs.hibernate_first; public class Student { p

    Hibernate 對映關係 ---One2One 外來鍵關聯

    1.One2One 外來鍵單向關聯 是 many-2-one 的特殊案例,在多的一端使用unique =true, 多的一端配置如下: <classname="Person"table="t_person"> <idname="id"column="id

    Hibernate 對映關係 ---One2One 主鍵關聯

    1.One2One 主鍵單向關聯 兩個實體id保持相同,可避免多餘欄位建立 維護方 主鍵 採用foreign 生成器,並且使用one-to-one 標籤 constrained只能在one-to-one的對映中使用,(一般在主表的對映中,有外來鍵的那個表)。如果co

    Hibernate對映多對一關聯關係

    多對一的單向關聯 表於表的關聯可以分為一對一,一對多,多對一和多對多 例如在網路商城中,一個大的商品分類下,有多個小的商品分類,一個小的商品分類下,有多個商品 多對一的單向關聯 例如 tab <many-to-one name="category" cla

    hibernate之7.one2many雙向

    rri 默認 app 姓名 data print pop one int 表結構 實體類關系 實體類源代碼 Student package com.demo.model; import java.io.UnsupportedEncod

    Hibernate對映關係之延時載入

    當一個主物件中包涵從物件時,不同關心 配置會有不同的結果 各個關係之前的區別: one-to-one             查詢主物件:                 預設的不是延時載入,查詢主物件時也會把從物件查詢出來                 當

    Hibernate 對映關係Many2One

    casecade 級聯關係一般由多得一端維護:  對映關係Many2One 多的一端,hbm 配置如下: <class name="User" table="t_user"> <id name="id" column="id" type="java.la

    對JPA實體關係管理雙向關聯的一些思考

    現象 在使用JPA進行實體關係管理的時候,會產生無限迴圈的情況,如果使用fastjson來進行序列化,則表現形式如下: { "address":{ "id":63,

    Hibernate關係對映的多對一單向關聯、多對一雙向關聯、一對一主鍵關聯、一對一外來鍵關聯、多對多關係關聯

    2018-11-10  22:27:02開始寫   下圖內容ORM、Hibernate介紹、hibername.cfg.xml結構:     下圖內容hibernate對映檔案結構介紹   下圖內容hibernate

    Hibernate的多對多關聯關係對映

    建立三張表的資料模型如下  建立實體類 package cn.com.dao; import java.util.HashSet; import java.util.Set; public class Sys_Role { private int role_id;

    Hibernate學習(四)———— 雙向多對多對映關係

    一、小疑問的解答        問題一:到這裡,有很多學習者會感到困惑,因為他不知道使用hibernate是不是需要自己去建立表,還是hibernate全自動,如果需要自己建立表,那麼主外來鍵這種設定也是自己設定嗎?這讓人感到很困惑,現在就來解決一下這個小疑問(如果知道了的可以直接跳過看下面的多對多對映關係

    Hibernate基於主鍵的單項,雙向多對多對映關係

    今天我們來一起談論下hibernate的基於主鍵的單項,雙向多對多對映關係 首先多對多都是基於主鍵的,沒有基於外來鍵的說法 1.基於主鍵的單項多對多 在這裡就是說中間stuobject是一張關係表,將兩張表的主鍵進行關聯,形成了多對多的關係 程式碼如

    Hibernate實體關係對映:單向主鍵一對一關聯

    主鍵單向一對一關聯: 1、被控方的主鍵參照主控方的主鍵來生成 2、對應資料庫表關係為被控方的主鍵同時參照引用主控方的主鍵 3、儲存被控方物件,需要先儲存主控方(不然怎麼從native產生主鍵值,被控方更是獲取不到了) 主控方People public class Peo

    hibernate 多對一雙向對映關係

    Book類(圖書類):package com.hc.model; public class Book { private Integer id; private String name;

    hibernate one2many (單向關聯)

    集合 ssid 就會 try 發出 nts hiberna mit 數據 Classes類: package com.cnblogs.hibernate_first; import java.util.Set; public class Classes {

    hibernate的映射之四(多對多雙向關聯)

    als oot bean odi 生成 指定 數據庫方言 映射文件 格式化sql Many-to-Many 多對多的映射可以使用一組Java集合不包含任何重復的元素來實現。我們已經看到了Hibernate如何設置映射集合。 集(SET)被映射到與映射表中<set&g