many to one 级联关系配置问题 求帮助
本帖最后由 gaoshanwlm 于 2013-04-22 18:05:14 编辑
A 表根据areaid 查询 b表的areaname
A表areaid 普通字段
b表的areaid是主键
@ManyToOne
@JoinColumn(name = "areaid", insertable = false, updatable = false, referencedColumnName = "areaid")
//关联那个字段 ,以类中那个字段关联 两个表联系
//@JoinColumn(name="areaid", referencedColumnName="areaid")
public SysArea getSysArea() {
return sysArea;
}
public void setSysArea(SysArea sysArea) {
this.sysArea = sysArea;
}
这么查 关联字段不出来
当改成
//@OneToOne(cascade = CascadeType.REFRESH , optional = false,fetch = FetchType.LAZY)
@JoinColumn(name="areaid", referencedColumnName="areaid")
就可以,当格式json就报错了 意思是关联关系配置不对 求帮助 如何配置这个关联关系
------解决方案--------------------@ManyToOne
是可以关联查询出来的,因为一的一端默认是EAGER,
@ManyToOne
@JoinColumn(name = "areaid", insertable = false, updatable = false, referencedColumnName = "areaid")
//关联那个字段 ,以类中那个字段关联 两个表联系
//@JoinColumn(name="areaid", referencedColumnName="areaid")
public SysArea getSysArea() {
return sysArea;
}
你说的这样查不来,我就很怀疑了,。这样是可以查询出来的。
你确定,是没查询出来,还是没数据
------解决方案--------------------不是主键关联,加上property-ref=“areaname”
@JoinColumn(name = "areaid", insertable = false, updatable = false, referencedColumnName = "areaid",
property-ref="areaname")