隨筆-18  評(píng)論-8  文章-0  trackbacks-0

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

          Hibernate Annotation 配置的注意點(diǎn):

          • 需要映射字段的@Column屬性設(shè)為insertable = false, updatable = false,
            • 不產(chǎn)生列重復(fù)的異常?
            • 在hql解析的時(shí)候,自動(dòng)合并相同的列(參考)
          • 類必須implements Serializable,不然會(huì)拋ClassCaseException(郁悶4個(gè)小時(shí) -_-!)
          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) 評(píng)論(0)  編輯  收藏 所屬分類: 基礎(chǔ)很重要
          主站蜘蛛池模板: 佛坪县| 泌阳县| 驻马店市| 班戈县| 铜鼓县| 龙胜| 揭西县| 宜兰市| 苏尼特右旗| 本溪市| 长岭县| 松原市| 阿城市| 灵丘县| 黔南| 元氏县| 关岭| 务川| 盐源县| 德安县| 中阳县| 凤翔县| 来凤县| 依安县| 青川县| 南丰县| 山丹县| 黎川县| 昭通市| 阿巴嘎旗| 崇文区| 黄石市| 贡觉县| 屏东县| 射洪县| 隆林| 三河市| 温泉县| 容城县| 迁安市| 平山县|