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)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 屏东县| 铜鼓县| 新平| 南皮县| 甘孜县| 宁津县| 嵩明县| 湖南省| 秦皇岛市| 绥化市| 长治县| 甘德县| 柳江县| 淄博市| 赣榆县| 陇西县| 衡阳市| 抚宁县| 巫溪县| 阿拉善左旗| 砀山县| 洮南市| 哈密市| 涿鹿县| 宁德市| 曲松县| 砀山县| 南康市| 汕尾市| 长沙市| 新野县| 和平县| 宁远县| 崇州市| 永顺县| 云安县| 石狮市| 建昌县| 浪卡子县| 会东县| 溧阳市|