Hibernate关联关系(二) Cascade级联
2016-02-18 12:45
197 查看
1、cascade定义的是关系两端对象到对象的级联关系;而inverse定义的是关系和对象的级联关系。
all : 所有情况下均进行关联操作。
none:所有情况下均不进行关联操作。这是默认值。
save-update:在执行save/update/saveOrUpdate时进行关联操作。
delete:在执行delete时进行关联操作。
2、CascadeType
CascadeType.REFRESH:级联刷新,当多个用户同时作操作一个实体,为了用户取到的数据是实时的,在用实体中的数据之前就可以调用一下refresh()方法!
CascadeType.REMOVE:级联删除,当调用remove()方法删除Order实体时会先级联删除OrderItem的相关数据!
CascadeType.MERGE:级联更新,当调用了Merge()方法,如果Order中的数据改变了会相应的更新OrderItem中的数据,
CascadeType.ALL:包含以上所有级联属性。
(注:以上几种级联操作,只能实在满足数据库的约束时才能生效,比如上边的Order和OrderItem存在主外键关联所以执行REMOVE()方法时是不能实现级联删除的)
CascadeType.PERSIST:级联保存,当调用了Persist() 方法,会级联保存相应的数据
all : 所有情况下均进行关联操作。
none:所有情况下均不进行关联操作。这是默认值。
save-update:在执行save/update/saveOrUpdate时进行关联操作。
delete:在执行delete时进行关联操作。
2、CascadeType
CascadeType.REFRESH:级联刷新,当多个用户同时作操作一个实体,为了用户取到的数据是实时的,在用实体中的数据之前就可以调用一下refresh()方法!
CascadeType.REMOVE:级联删除,当调用remove()方法删除Order实体时会先级联删除OrderItem的相关数据!
CascadeType.MERGE:级联更新,当调用了Merge()方法,如果Order中的数据改变了会相应的更新OrderItem中的数据,
CascadeType.ALL:包含以上所有级联属性。
(注:以上几种级联操作,只能实在满足数据库的约束时才能生效,比如上边的Order和OrderItem存在主外键关联所以执行REMOVE()方法时是不能实现级联删除的)
CascadeType.PERSIST:级联保存,当调用了Persist() 方法,会级联保存相应的数据
相关文章推荐
- 外观模式
- java中集合存储子类的泛型表示方法;
- Numeric Keypad
- 1035. Password (20)
- iOS应用程序发布AppStore及更新流程
- socket阻塞与非阻塞 同步与异步 select poll epoll
- HLS科普7 播放列表标签-媒体片段标签
- 修改phpcmsv9网站系统最新版本tag的伪静态设置
- R语言中的svm实例
- HDU1495 广搜 喝水问题
- HttpURLConnection简单用法
- 怎么在win7里设置默认启动用户?
- Hibernate 关联关系 使用简介(一)
- 语句乎?表达式乎?(Python/C)
- Rxjava学习博客
- 【SPOJ-CRDS】Cards【数数】
- Flask 学习资料
- [Leetcode]Reverse Linked List II
- Xcode7 配置Pch文件
- node处理get请求