开发者社区> 问答> 正文

关于级联,冬眠中的save()和persists()方法之间有什么区别?

在这里,我使用save()方法将一个Instructor对象保存到数据库中。[Instructor和InstructorDetails之间具有级联关系,允许一对一的双向交互,因此,保存教师对象也将保存了教师属性。]在这种情况下,我得到了一个保存瞬态的实例在冲洗前-对象引用一个未保存的瞬态的实例的错误。但是,当我使用不附带的挖墙角()方法。因此,但是当我将级联类型更改为CascadeType.ALL时,也可以使用save()方法。但是您可以看到,我只是在以下代码中删除了REMOVE的级联类型,所以它将如何影响到像save()这样的方法?

讲师模型班

公共课程讲师{

@OneToOne(cascade={CascadeType.DETACH,CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
//Here you can see I just only neglected the cascade type of REMOVE only 
@JoinColumn(name="instructor_detail_id")
private InstructorDetails instructorDetail;
//
//
}

InstructorDetails模型类

公共课程InstructorDetails {

@OneToOne(mappedBy ="instructorDetail",cascade = 
{CascadeType.DETACH,CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH} )
//Here you can see I just only neglected the cascade type of REMOVE only 
private Instructor instructor;
//
//
}

展开
收起
几许相思几点泪 2019-12-22 18:24:03 770 0
1 条回答
写回答
取消 提交回答
  • 技术架构师 阿里云开发者社区技术专家博主 CSDN签约专栏技术博主 掘金签约技术博主 云安全联盟专家 众多开源代码库Commiter

    你猜呢。。。建议多看看官方文档

    2019-12-28 18:53:22
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
建立联系方法之一 立即下载
fibjs 模块重构从回调到协程--陈垒 立即下载
低代码开发师(初级)实战教程 立即下载