編程生活

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評論 :: 0 Trackbacks

          其實在定義單向關系中只有三情況:

          • 一對多

          • 一對一

          • 多對多

           

          OneToOne


          @OneToOne(fetch = FetchType.LAZY)

          @JoinColumn(name="當前對象的關聯(lián)id")

          使用如:
          1.直接使用
              JPQL:select o.id, o.name,o.relaObj.id,o.relaObj.name from User o where o.id=?1,
             此種方式生成的SQL:select t0.id,t0.name,t1.id,t2.name from User t0,Rel t1 where t0.id=?1 and t0.當前對象的關聯(lián)id=t1.id


          2.用join
             JPQL:select o.id, o.name,r.id,o.r.name from User o left join o.relaObj r where o.id=?1

          第2種方式常用一些

           

          OneToMany

          @OneToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
              @JoinTable(
                      joinColumns = { @JoinColumn( name="condition_id") },//當前對象的關聯(lián)id
                      inverseJoinColumns = @JoinColumn( name="actionDefine_id")//關聯(lián)表的id
              )
              @IndexColumn(name="sortFlag")


           

          ManyToMany

          @ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
              @JoinTable(
                      name="中間表",,
                      joinColumns = { @JoinColumn( name="condition_id") },//當前對象的關聯(lián)id
                      inverseJoinColumns = @JoinColumn( name="actionDefine_id")//關聯(lián)表的id
              )
              @IndexColumn(name="sortFlag")


          posted on 2007-09-20 15:59 wilesun 閱讀(834) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          主站蜘蛛池模板: 揭东县| 金坛市| 九寨沟县| 绥芬河市| 海伦市| 邢台县| 通城县| 将乐县| 安平县| 江山市| 云南省| 大连市| 漳平市| 霞浦县| 治县。| 蕉岭县| 册亨县| 资中县| 常德市| 色达县| 武冈市| 日照市| 奉节县| 利辛县| 中阳县| 盐池县| 息烽县| 涟水县| 微山县| 前郭尔| 博白县| 郯城县| 永昌县| 当涂县| 高尔夫| 太湖县| 垫江县| 喀喇| 蛟河市| 梁山县| 遂平县|