为了账号安全,请及时绑定邮箱和手机立即绑定

主控方student被保存的时候,级联不是会自动保存idcard的么,为什么还要调用save(idcard)?

在student类中不是 在idcad的getIdcard设置了级联注解么。 既然是级联操作,为什么在测试的时候还要明确调用save(idcard),不应该是主控方student被保存的时候,会自动保存idcard的么?

正在回答

5 回答

起初看到这个问题我也不理解,看到楼上说的我在去了解了一番以后发现了其中区别,单向一对一(一对多)表示的先insert多的一端也就是被控方,而此时被控方是不知道主控方的存在,而当一的一端也就是主控方insert时,他已经知道被控方的存在,所以他就可以查询到被控方,而被控方是无法查询到主控方。

0 回复 有任何疑惑可以回复我~

所以这里设置级联 作用凸显在什么地方呢

0 回复 有任何疑惑可以回复我~

因为这里是单向一对一关系  你说这种情况是双向一对一了 

0 回复 有任何疑惑可以回复我~
#1

南大软工学徒

感觉你说的有道理
2016-12-18 回复 有任何疑惑可以回复我~

我看到这里也有同样的问题。感觉有些配置要做,有时间再研究一下。

0 回复 有任何疑惑可以回复我~

先创建被控方,再创建主控方,所以要先保留被控方

0 回复 有任何疑惑可以回复我~
#1

Angular_Dracula 提问者

那为什么还要设置级联,到头来还不是照样自己要手动调用save保存么。 级联不就是如果数据库里没有,就自动创建啊!不用自动掉用save的!
2016-03-14 回复 有任何疑惑可以回复我~
#2

SunsunDay 回复 Angular_Dracula 提问者

都可以的。设置及联的最初目的不是省那一句话,而是为了防止出错应该。你也可以不自己saveCard对象。但是写上也没错,不写的话根据级联关系Hibernate会给你写上。
2016-07-22 回复 有任何疑惑可以回复我~
#3

慕容慕 回复 SunsunDay

你试过吗?
2016-08-20 回复 有任何疑惑可以回复我~
#4

南大软工学徒 回复 SunsunDay

我试过好像不可以
2016-12-18 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
Hibernate注解
  • 参与学习       37186    人
  • 解答问题       87    个

轻松学习Hibernate常用注解,学完本课能够灵活应用

进入课程

主控方student被保存的时候,级联不是会自动保存idcard的么,为什么还要调用save(idcard)?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信