在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)

          搜索

          最新評論

          主站蜘蛛池模板: 安岳县| 张家界市| 江津市| 宁蒗| 靖远县| 潞西市| 雅安市| 牡丹江市| 合川市| 合山市| 高雄县| 读书| 四子王旗| 和平县| 马山县| 泗洪县| 海安县| 洛宁县| 如皋市| 东乌珠穆沁旗| 寿光市| 镇赉县| 岚皋县| 息烽县| 铜鼓县| 定州市| 会泽县| 德化县| 米泉市| 临沂市| 融水| 鄱阳县| 巴南区| 卢湾区| 江门市| 洛南县| 澜沧| 岳普湖县| 沿河| 千阳县| 山丹县|