注册 登录
编程论坛 J2EE论坛

CascadeType是什么意思啊

赤冰 发布于 2007-05-28 15:04, 6149 次点击
@OneToOne(cascade = {CascadeType.ALL})
@JoinColumn(name = "parent_id")
private Branch parent; //上级分支机构
private int level; //级别

那位解释一下
OneToOne(cascade = {CascadeType.ALL})
@JoinColumn(name = "parent_id")
是什么意思啊,主要是cascade={CascadeType.ALL}是什么啊
4 回复
#2
angeloc2007-05-28 15:40

CascadeType[]类型。
该属性定义类和类之间的级联关系。定义的级联关系将被容器视为对当前类对象及其关联类对象采取相同的操作,而且这种关系是递归调用的。举个例子:Book和BookExtend有级联关系,那么删除Book时将同时删除它所对应的BookExtend对象。而如果BookExtend还和其他的对象之间有级联关系,那么这样的操作会一直递归执行下去。
cascade的值只能从CascadeType.PERSIST(级联新建)、CascadeType.REMOVE(级联删除)、CascadeType.REFRESH(级联刷新)、CascadeType.MERGE(级联更新)中选择一个或多个。还有一个选择是使用CascadeType.ALL,表示选择全部四项。

一定要学会查帮助文档啊~

#3
赤冰2007-05-28 16:04

谢谢斑竹
那下面是产生自增的id,是把?
其中的name,sequenceName,strategy这些东西又是什么呢,初学还请多指教阿。

@SequenceGenerator(name="GoodsInfoSeq",sequenceName="goodsinfo_seq")
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="GoodsInfoSeq")

还有就是这个是怎么应用的呢,把自增的id放在下面,怎么我看还有GetId()方法也可以放在下面呢

[此贴子已经被作者于2007-5-28 16:18:08编辑过]

#4
angeloc2007-05-28 16:43
呵呵,我也是帮你查的帮助文档.EJB3我工作中用不到也没研究过呢~
你还是自己查查帮助文档吧.
#5
menglinxi2008-09-13 17:07
如果只想级联查询写什么?
如果只想级联查询CascadeType写什么?
1