posts - 325,  comments - 25,  trackbacks - 0
          hibernate一對一關聯有兩種方式:
          1.共享主鍵:限制兩個表的主鍵使用相同的值
          2.唯一外鍵:
          如:通常將會員的登陸賬號和會員的詳細信息分開
          3.數據表
          login表:
          字段名稱 數據類型 主鍵 自增 允許為空 描述
          ID int(4) yes ID號
          LOGINNAME char(20) yes 登陸賬號
          LOGINPWD char(20) yes 登陸密碼

          詳細信息company表:
          字段名稱 數據類型 主鍵 自增 允許為空 描述
          ID int(4) yes 增1 ID號
          COMPANGNAME varchar(100) yes 公司名稱
          TELPHONE char(20) yes 聯系電話
          EMAIL char(20) yes 郵件
          LINKMAN char(20) yes 聯系人


          4.PO類
          Login.java
          public class Login implements Serializable{
              private Integer id;
              private String loginName;
              private String loginPwd;
              private Company company;
              public Login(){
              }
          }
          Company.java
          public class Company implements Serializable{
              private Integer id;
              private String companyName;
              private String linkMan;
              private String telphone;
              private String email;
              private Login login;
              public Company(){
              }
          }
          6.hbm.xml
          Login.hbm.xml:
          <hibernate-mapping package="com.lhb.vo">
              <class="Login" table="login">
                      <id name="id" column="id" type="integer">
                              <!--直接采用外鍵的屬性值,使用foreign標識生成器,達到共享主鍵目的-->
                              <generator class="foreign">
                                      <param name="property">company</param>
                              </generator>
                      </id>
                      <property name="loginName" column="LOGINNAME' type="String"/>
                      <property name="loginPwd" column="LOGINPWD" type="String"/>
                      <!--映射login與company一對一關聯-->
                      <one-to-one name="company" class="com.lhb.Company" constrained="true"/>
              </class>
          </hibernate-mapping>

          Company.hbm.xml:
          <hibernate-mapping package="com.lhb.vo">
              <class="company" table="COMPANY">
                  <id name="id"  column="id" type="integer">
                          <generator class="identity"/>
                  </id>
                  <property name="companyName" type="String"/>
                      :
                      :
                  <one-to-one name="login" class="com.lhb.Login" cascade="all" <!--主控類的所有操作,對關聯類也執行同樣-->
                      lazy="false"/>
              </class>
          <hibernate-mapping>
          posted on 2008-05-25 16:30 長春語林科技 閱讀(300) 評論(0)  編輯  收藏 所屬分類: hibernate
          <2008年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

           

          長春語林科技歡迎您!

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 九寨沟县| 鄂尔多斯市| 兴义市| 榆林市| 伊川县| 昭觉县| 德安县| 盐亭县| 康乐县| 武威市| 泊头市| 太湖县| 武平县| 克什克腾旗| 新源县| 双峰县| 怀来县| 怀柔区| 合山市| 鄂托克旗| 萨嘎县| 阳泉市| 松溪县| 河源市| 吐鲁番市| 大田县| 桂东县| 尼勒克县| 望都县| 唐河县| 隆安县| 靖西县| 定结县| 雅安市| 札达县| 黄石市| 襄樊市| 云和县| 武强县| 三原县| 南雄市|