<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Cyh的博客

    Email:kissyan4916@163.com
    posts - 26, comments - 19, trackbacks - 0, articles - 220

    Hibernate數據關聯技術

    Posted on 2009-02-16 19:45 啥都寫點 閱讀(167) 評論(0)  編輯  收藏 所屬分類: J2EE

    one-to-one 主鍵關聯

    數據庫腳本

    -- 刪除表

    DROP TABLE idcard ;

    DROP TABLE person ;

    -- 創建表

    CREATE TABLE person

    (

           id VARCHAR(32) NOT NULL PRIMARY KEY ,

           name VARCHAR(20) NOT NULL ,

           age int

    ) ;

    CREATE TABLE idcard

    (

           id VARCHAR(32) ,

           serial VARCHAR(18) NOT NULL ,

           expiry int ,

           FOREIGN KEY(id) REFERENCES person(id) ON DELETE CASCADE

    ) ;

    Person表的hbm配置:

    <hibernate-mapping>

           <class name="org.lxh.hibernate.demo04.pojo.Person" table="person">

                  <id name="id" type="java.lang.String">

                         <column name="id" length="32" />

                         <generator class="uuid.hex"></generator>

                  </id>

                  <property name="name" type="java.lang.String">

                         <column name="name" length="20" not-null="true" />

                  </property>

                  <property name="age" type="java.lang.Integer">

                         <column name="age" />

                  </property>

                  <one-to-one name="idCard"

                         class="org.lxh.hibernate.demo04.pojo.IDCard" cascade="all"

                         outer-join="true">

                  </one-to-one>

           </class>

    </hibernate-mapping>

    IDCard表的hbm配置:

    <hibernate-mapping>

           <class name="org.lxh.hibernate.demo04.pojo.IDCard" table="idcard">

                  <id name="id" column="id" type="java.lang.String">

                         <generator class="foreign">

                                <param name="property">person</param>

                         </generator>

                  </id>

                  <one-to-one name="person"

                         class="org.lxh.hibernate.demo04.pojo.Person" constrained="true">

                  </one-to-one>

                  <property name="serial" type="java.lang.String">

                         <column name="serial" length="18" not-null="true" />

                  </property>

                  <property name="expiry" type="java.lang.Integer">

                         <column name="expiry" not-null="true" />

                  </property>

           </class>

    </hibernate-mapping>

    à唯一外鍵關聯

    此例子為mang–to-one

    -- 刪除表

    DROP TABLE person ;

    DROP TABLE tgroup ;

    -- 創建表

    CREATE TABLE person

    (

           id VARCHAR(32) PRIMARY KEY NOT NULL ,

           name VARCHAR(20) NOT NULL ,

           age INT ,

           gid VARCHAR(32)

    ) ;

    CREATE TABLE TGROUP

    (

           gid VARCHAR(32) PRIMARY KEY NOT NULL,

           name VARCHAR(20)

    ) ;

    commit ;

    àPerson.hbm.xml

    <hibernate-mapping>

           <class name="org.lxh.hibernate.demo05.pojo.Person" table="person">

                  <id name="id" type="java.lang.String">

                         <column name="id" length="32" />

                         <generator class="uuid.hex"></generator>

                  </id>

                  <property name="name" type="java.lang.String">

                         <column name="name" length="20" not-null="true" />

                  </property>

                  <property name="age" type="java.lang.Integer">

                         <column name="age" />

                  </property>

                  <many-to-one name="tgroup"

                         class="org.lxh.hibernate.demo05.pojo.TGroup" column="gid"

                         unique="true">

                  </many-to-one>

           </class>

    </hibernate-mapping>

    àTGroup.hbm.xml

    <hibernate-mapping>

           <class name="org.lxh.hibernate.demo05.pojo.TGroup" table="tgroup">

                  <id name="gid" type="java.lang.String">

                         <column name="gid" length="32" />

                         <generator class="uuid.hex"></generator>

                  </id>

                  <property name="name" type="java.lang.String">

                         <column name="name" length="20" not-null="true" />

                  </property>

                  <one-to-one name="person"

                         class="org.lxh.hibernate.demo05.pojo.Person" property-ref="tgroup">

                  </one-to-one>

           </class>

    </hibernate-mapping>

    àone-to-many

    àPerson.hbm.xml

    <hibernate-mapping>

           <class name="org.lxh.hibernate.demo06.pojo.Person" table="person"

                  catalog="mldn">

                  <id name="pid" type="java.lang.String">

                         <column name="pid" length="32" />

                         <generator class="uuid.hex"></generator>

                  </id>

                  <property name="name" type="java.lang.String">

                         <column name="name" length="20" not-null="true" />

                  </property>

                  <property name="age" type="java.lang.Integer">

                         <column name="age" />

                  </property>

                  <set name="address" table="address" cascade="all"

                         inverse="true">

                         <key>

                                <column name="pid" length="32" />

                         </key>

                         <one-to-many class="org.lxh.hibernate.demo06.pojo.Address" />

                  </set>

           </class>

    </hibernate-mapping>

    àAddress.hbm.xml

    <hibernate-mapping>

        <class name="org.lxh.hibernate.demo06.pojo.Address" table="address" catalog="mldn">

            <id name="aid" type="java.lang.String">

                <column name="aid" length="32" />

                <generator class="uuid.hex"></generator>

            </id>

            <many-to-one name="person" class="org.lxh.hibernate.demo06.pojo.Person">

                <column name="pid" length="32" />

            </many-to-one>

            <property name="name" type="java.lang.String">

                <column name="name" length="50" not-null="true" />

            </property>

            <property name="zipcode" type="java.lang.String">

                <column name="zipcode" length="10" not-null="true" />

            </property>

        </class>

    </hibernate-mapping>



                                                                                                           --    學海無涯
            

    主站蜘蛛池模板: 亚洲国产成人久久一区二区三区| 色哟哟国产精品免费观看| 大地资源网高清在线观看免费 | 亚洲高清视频在线播放| 99精品视频在线观看免费专区| 美女视频黄的全免费视频网站| 亚洲M码 欧洲S码SSS222| 免费国产va在线观看| 不卡精品国产_亚洲人成在线| 亚洲三级在线播放| 最近中文字幕无免费视频| 亚洲欧洲专线一区| 免费人成视频在线观看视频| 美女扒开尿口给男人爽免费视频 | 日韩免费观看的一级毛片| 国产精品无码亚洲一区二区三区| 182tv免费视频在线观看| 亚洲国产人成在线观看69网站 | 亚洲精品人成无码中文毛片| 亚洲高清无在码在线电影不卡| 狼人大香伊蕉国产WWW亚洲| 蜜臀AV免费一区二区三区| 亚洲色图激情文学| 国产精品免费一级在线观看| 中文字幕在线视频免费| 91亚洲国产成人精品下载| 免费无码又爽又高潮视频| 中美日韩在线网免费毛片视频| 成人女人A级毛片免费软件| 四虎在线视频免费观看| 欧洲精品码一区二区三区免费看| 成人免费无码大片A毛片抽搐色欲 成人免费无码大片a毛片 | 91视频国产免费| 国产成人综合亚洲| 免费中文熟妇在线影片| 日韩精品无码免费视频| 亚洲国产精品免费在线观看| 亚洲第一se情网站| 亚洲国产成人一区二区三区| 最近2019中文免费字幕| 91成人免费福利网站在线|