save the transient instance before flushing

来源:互联网 发布:飞天面条 知乎 编辑:程序博客网 时间:2024/06/06 03:39


三张数据表的关系如下图 


在java中如下写法报错(错误信息:save the transient instance before flushing):

 @OneToMany(fetch=FetchType.LAZY)  //这种情形会报错save the transient instance before flushing: elitel.szy.groundwater.entity.PlanLayer
 @JoinColumn(name="PLID")
 public List<PlanLayer> getLayers() {
  return layers;
 }
 public void setLayers(List<PlanLayer> layers) {
  this.layers = layers;
 }


将上述代码修改下,错误解决:


 @OneToMany(fetch = FetchType.LAZY , cascade=CascadeType.ALL)
 @JoinColumn(name="PLID")
 public List<PlanLayer> getLayers() {
  return layers;
 }
 public void setLayers(List<PlanLayer> layers) {
  this.layers = layers;
 }


但为什么如此改就可以解决问题,还不清楚。

0 0
原创粉丝点击