waysun一路陽光

          不輕易服輸,不輕言放棄.--心是夢的舞臺,心有多大,舞臺有多大。踏踏實實做事,認認真真做人。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            167 隨筆 :: 1 文章 :: 64 評論 :: 0 Trackbacks
          http://www.aygfsteel.com/Files/1504/Hibernate-onetomany.txt一個一對多的完整例子:資料來源網絡,進行整理.
          people表:{peopleId,name}

          address表:{addressId,peopleId,addressName,codeNumber}

          package com.gpdi.test;

          import org.hibernate.Session;

          import com.gpdi.orm.object.Address;
          import com.gpdi.orm.object.People;

          public class Testp {

           /**
            * @param args
            */
           public static void main(String[] args)
           {
            People people = new People();
            people.setName("linda");
            Address address = new Address();
            address.setAddressName("yunnan");
            address.setCodeNumber("564123");
            address.setPeople(people);
            people.getAddresses().add(address);
            Session session = HibernateSessionFactory.currentSession();
            session.beginTransaction();
            session.save(people);
            session.getTransaction().commit();

           }

          }

          People.hbm.xml

          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
          <!--
              Mapping file autogenerated by MyEclipse - Hibernate Tools
          -->
          <hibernate-mapping>
              <class name="com.gpdi.orm.object.People" table="People">
            <id name="id" column="peopleId" unsaved-value="0" >
            <generator class="increment">
            </generator>
            </id>
            <property name="name" column="name"></property>
            <set name="addresses" cascade="save-update">
            <key column="peopleId" not-null="true" />
            <one-to-many class="com.gpdi.orm.object.Address"/>
            </set>

              </class>
          </hibernate-mapping>

          People.java

          package com.gpdi.orm.object;

          import java.util.HashSet;
          import java.util.Set;

          public class People implements java.io.Serializable
          {
           private long id;
           private String name;
           private Set addresses = new HashSet();
           public Set getAddresses() {
            return addresses;
           }
           public void setAddresses(Set addresses) {
            this.addresses = addresses;
           }
           public long getId() {
            return id;
           }
           public void setId(long id) {
            this.id = id;
           }
           public String getName() {
            return name;
           }
           public void setName(String name) {
            this.name = name;
           }

          }

          Address.hbm.xml
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
          <!--
              Mapping file autogenerated by MyEclipse - Hibernate Tools
          -->
          <hibernate-mapping>
              <class name="com.gpdi.orm.object.Address" table="Address">
           <id name="id" column="addressId" unsaved-value="0">
           <generator class="increment">
           </generator>
           </id>
           <many-to-one name="people" column="peopleId" insert="false" update="false"></many-to-one>
           <property name="addressName" column="addressName"></property>
           <property name="codeNumber" column="codeNumber"></property>
              </class>
          </hibernate-mapping>

          Address.java
          package com.gpdi.orm.object;
          public class Address implements java.io.Serializable
          {
           private long id;
           private People people;
           private String addressName;
           private String codeNumber;
           public String getAddressName() {
            return addressName;
           }
           public void setAddressName(String addressName) {
            this.addressName = addressName;
           }
           public String getCodeNumber() {
            return codeNumber;
           }
           public void setCodeNumber(String codeNumber) {
            this.codeNumber = codeNumber;
           }
           public long getId() {
            return id;
           }
           public void setId(long id) {
            this.id = id;
           }
           public People getPeople() {
            return people;
           }
           public void setPeople(People people) {
            this.people = people;
           }
          }
          下載例子:整理后
          一對多的完整例子
          下載例子:整理前

          posted on 2009-02-22 19:36 weesun一米陽光 閱讀(610) 評論(0)  編輯  收藏 所屬分類: Hibernatecnweblog/nm1504
          主站蜘蛛池模板: 资中县| 广昌县| 三原县| 普陀区| 吉隆县| 图片| 无锡市| 古丈县| 潜山县| 东辽县| 千阳县| 宁乡县| 滨州市| 金湖县| 青河县| 兴宁市| 宜兰市| 白沙| 龙岩市| 霍州市| 祁东县| 江源县| 古蔺县| 东港市| 龙山县| 天峻县| 龙井市| 佛冈县| 赤城县| 万年县| 武穴市| 平南县| 湘潭市| 彝良县| 新龙县| 当雄县| 长沙县| 济宁市| 乌审旗| 琼中| 河源市|