隨筆-18  評論-8  文章-0  trackbacks-0

          主表有兩個字段映射到副表,可以取得唯一記錄,但這條記錄不定存在,這兩個字段需要做條件過濾,就這個狀況。

          Hibernate Annotation 配置的注意點:

          • 需要映射字段的@Column屬性設為insertable = false, updatable = false,
            • 不產生列重復的異常?
            • 在hql解析的時候,自動合并相同的列(參考)
          • 類必須implements Serializable,不然會拋ClassCaseException(郁悶4個小時 -_-!)
          HQL
          select ?s from ScopeProjection s? left ? join?fetch?s.overridewhere?s.hubsite=??ands.companyabbr=?

          CODE
          @Entity
          @SequenceGenerator(name
          = " SEQ_GEN " ,?sequenceName = " SCOPEPROJECTIONSEQ " )
          public ? class ?ScopeProjection? implements ?Serializable?{
          ????
          private ?Integer?id;
          ????
          private ?String?hubsite;
          ????
          private ?String?companyabbr;
          ????
          private ?ScopeProjectionOverride?override;

          ????@Id
          ????@Column(name?
          = ? " PROJECTIONID " )
          ????@GeneratedValue(strategy?
          = ?GenerationType.AUTO,?generator? = ? " SEQ_GEN " )
          ????
          public ?Integer?getId()?{
          ????????
          return ?id;
          ????}

          ????
          public ? void ?setId(Integer?id)?{
          ????????
          this .id? = ?id;
          ????}

          ????@Column(name?
          = ? " HUBSITENAME " ,?nullable? = ? false ,?insertable? = ? false ,?updatable? = ? false )
          ????
          public ?String?getHubsite()?{
          ????????
          return ?hubsite;
          ????}

          ????
          public ? void ?setHubsite(String?hubsite)?{
          ????????
          this .hubsite? = ?hubsite;
          ????}

          ????@Column(name?
          = ? " COMPANYABBREVIATION " ,?nullable? = ? false ,?insertable? = ? false ,?updatable? = ? false )
          ????
          public ?String?getCompanyabbr()?{
          ????????
          return ?companyabbr;
          ????}

          ????
          public ? void ?setCompanyabbr(String?companyabbr)?{
          ????????
          this .companyabbr? = ?companyabbr;
          ????}
          ????
          ????@OneToOne(cascade?
          = ?CascadeType.PERSIST)
          ????@JoinColumns?({
          ????????@JoinColumn(name?
          = ? " COMPANYABBREVIATION " ,?referencedColumnName? = ? " COMPANYABBREVIATION " ),
          ????????@JoinColumn(name?
          = ? " HUBSITENAME " ,?referencedColumnName? = ? " HUBSITENAME " )
          ????})
          ????
          public ?ScopeProjectionOverride?getOverride()?{
          ????????
          return ?override;
          ????}

          ????
          public ? void ?setOverride(ScopeProjectionOverride?override)?{
          ????????
          this .override? = ?override;
          ????}
          }

          @Entity
          @SequenceGenerator(name
          = " SEQ_GEN " ,?sequenceName = " SCOPEOVERRIDESEQ " )
          public ? class ?ScopeProjectionOverride? implements ?Serializable?{
          ????
          private ?Integer?id;
          ????
          private ?String?companyabbr;
          ????
          private ?String?hubsitename;

          ????@Id
          ????@Column(name?
          = ? " OVERRIDEID " )
          ????@GeneratedValue(strategy?
          = ?GenerationType.AUTO,?generator? = ? " SEQ_GEN " )
          ????
          public ?Integer?getId()?{
          ????????
          return ?id;
          ????}

          ????
          public ? void ?setId(Integer?id)?{
          ????????
          this .id? = ?id;
          ????}

          ????@Column(name?
          = ? " COMPANYABBREVIATION " )
          ????
          public ?String?getCompanyabbr()?{
          ????????
          return ?companyabbr;
          ????}

          ????
          public ? void ?setCompanyabbr(String?companyabbr)?{
          ????????
          this .companyabbr? = ?companyabbr;
          ????}

          ????
          public ?String?getHubsitename()?{
          ????????
          return ?hubsitename;
          ????}

          ????
          public ? void ?setHubsitename(String?hubsitename)?{
          ????????
          this .hubsitename? = ?hubsitename;
          ????}
          }
          posted on 2007-02-01 23:55 阿姆斯壯 閱讀(1420) 評論(0)  編輯  收藏 所屬分類: 基礎很重要
          主站蜘蛛池模板: 蒲江县| 阿坝| 淳安县| 丽江市| 龙游县| 新平| 全椒县| 全州县| 辽阳市| 哈尔滨市| 青河县| 海伦市| 旌德县| 阆中市| 盈江县| 碌曲县| 吴堡县| 荣成市| 夏津县| 白山市| 普定县| 郧西县| 乌审旗| 长宁县| 报价| 垫江县| 五大连池市| 鹤壁市| 吴忠市| 岳西县| 丰都县| 和田县| 永吉县| 奉新县| 洛宁县| 咸宁市| 义马市| 天柱县| 三台县| 兖州市| 鄯善县|