编程生活

统计

留言簿(1)

积分与排名

Blog链接

openJPA定义单向关联

其实在定义单向关系中只有三情况:

  • 一对多

  • 一对一

  • 多对多

 

OneToOne


@OneToOne(fetch = FetchType.LAZY)

@JoinColumn(name="当前对象的关联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.当前对象的关联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") },//当前对象的关联id
            inverseJoinColumns = @JoinColumn( name="actionDefine_id")//关联表的id
    )
    @IndexColumn(name="sortFlag")


 

ManyToMany

@ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
    @JoinTable(
            name="中间表",,
            joinColumns = { @JoinColumn( name="condition_id") },//当前对象的关联id
            inverseJoinColumns = @JoinColumn( name="actionDefine_id")//关联表的id
    )
    @IndexColumn(name="sortFlag")


posted on 2007-09-20 15:59 wilesun 阅读(208) 评论(0)  编辑  收藏




标题  
姓名  
主页
验证码 *  
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-12-06 13:03 编辑过
 
 
相关链接:
网站导航: