隨筆-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 阿姆斯壯 閱讀(1422) 評論(0)  編輯  收藏 所屬分類: 基礎很重要
          主站蜘蛛池模板: 射洪县| 瓮安县| 江津市| 盘锦市| 宁城县| 从化市| 乌审旗| 长垣县| 精河县| 太谷县| 海安县| 栖霞市| 夹江县| 麻栗坡县| 彭阳县| 雅江县| 永胜县| 印江| 麦盖提县| 原平市| 景德镇市| 满洲里市| 海兴县| 新源县| 东莞市| 昌邑市| 同德县| 舞钢市| 承德县| 晋宁县| 黄骅市| 西华县| 社会| 周宁县| 淳化县| 北辰区| 泰和县| 梧州市| 县级市| 伊金霍洛旗| 祁阳县|