在Hibernate中關于對復合主鍵的映射和處理

          在Hibernate中關于對復合主鍵的映射和處理:



          例子:

          <class name="User" table="USER">
          <composite-id name="userId" class="UserId">
          <key-property name="userName"
          column="USERNAME"/>
          <key-property name="organizationId"
          column="ORGANIZATION_ID"/>
          </composite-id>
          <version name="version"
          column="VERSION"
          unsaved-value="0"/>
          <many-to-one name="organization"
          class="Organization"
          column="ORGANIZATION_ID"
          insert="false" update="false"/>
          ...
          </class>
          public class UserId extends Serializable {
          private String username;
          private String organizationId;
          public UserId(String username, String organizationId) {
          this.username = username;
          this.organizationId = organizationId;
          }
          // Getters...
          public boolean equals(Object o) {
          if (this == o) return true;
          if (o = null) return false;
          if (!(o instanceof UserId)) return false;----一般的判斷開頭都基本這樣寫

          final UserId userId = (UserId) o;
          if (!organizationId.equals(userId.getOrganizationId()))
          return false;
          if (!username.equals(userId.getUsername()))
          return false;
          return true;
          }
          public int hashCode() {
          return username.hashCode();
          )
          }
          使用如下:

          UserId id = new UserId("john", 42);
          User user = new User();
          // Assign a primary key value
          user.setUserId(id);
          // Set property values
          user.setFirstname("John");
          user.setLastname("Doe");
          session.saveOrUpdate(user); // will save, since version is 0
          session.flush();

          posted on 2007-10-06 11:37 劉錚 閱讀(367) 評論(0)  編輯  收藏 所屬分類: Hibernate

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          留言簿(1)

          文章分類(141)

          文章檔案(147)

          搜索

          最新評論

          主站蜘蛛池模板: 澄城县| 中方县| 承德县| 二连浩特市| 林芝县| 贞丰县| 天台县| 长白| 胶南市| 鄯善县| 汨罗市| 云阳县| 彭阳县| 津市市| 宁阳县| 犍为县| 清新县| 崇文区| 革吉县| 宜宾县| 安庆市| 二连浩特市| 吉木萨尔县| 连城县| 抚远县| 韩城市| 万载县| 常州市| 岑溪市| 遂平县| 冷水江市| 镇平县| 顺义区| 洞口县| 合阳县| 武川县| 长垣县| 容城县| 镇坪县| 弋阳县| 海阳市|