主页 > 知识库 > 详解Hibernate cascade级联属性的CascadeType的用法

详解Hibernate cascade级联属性的CascadeType的用法

热门标签:电子围栏 团购网站 Linux服务器 Mysql连接数设置 阿里云 服务器配置 银行业务 科大讯飞语音识别系统

详解Hibernate cascade级联属性的CascadeType的用法

cascade(级联)

级联在编写触发器时经常用到,触发器的作用是当 主控表信息改变时,用来保证其关联表中数据同步更新。若对触发器来修改或删除关联表相记录,必须要删除对应的关联表信息,否则,会存有脏数据。所以,适当的做法是,删除主表的同时,关联表的信息也要同时删除,在hibernate中,只需设置cascade属性值即可。

cascade表示级联操作,在hibernate配置注解@OneToOne,@OneToMany,@ManyToMany,@ManyToOne中的属性。

例如:

@ManyToOne(cascade = CascadeType.REFRESH, optional = true) 
@JoinColumn(name = "user_id", unique = false) 
private UserBaseInfo userBaseInfo; 

配置多种级联,例如:

@OneToOne(cascade = {CascadeType.REFRESH,CascadeType.PERSIST,CascadeType.MERGE}, optional = true) 
@JoinColumn(name = "user_id", unique = false) 
private UserBaseInfo userBaseInfo; 

CascadeType.PERSIST:级联新增(又称级联保存):对order对象保存时也对items里的对象也会保存。对应EntityManager的presist方法。

CascadeType.MERGE:级联合并(级联更新):若items属性修改了那么order对象保存时同时修改items里的对象。对应EntityManager的merge方法 。

CascadeType.REMOVE:级联删除:对order对象删除也对items里的对象也会删除。对应EntityManager的remove方法。

CascadeType.REFRESH:级联刷新:获取order对象里也同时也重新获取最新的items时的对象。对应EntityManager的refresh(object)方法有效。即会重新查询数据库里的最新数据。

CascadeType.ALL:以上四种都是。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:
  • spring级联属性赋值的两种方式解析
  • springmvc级联属性处理无法转换异常问题解决
  • spring源码学习之bean的初始化以及循环引用
  • mybatis中实现让返回值与bean中字段相匹配
  • SpringBoot普通类获取spring容器中bean的操作
  • 解决Spring Boot 多模块注入访问不到jar包中的Bean问题
  • 通过工厂模式返回Spring Bean方法解析
  • Spring中BeanFactory和ApplicationContext的作用和区别(推荐)
  • Spring内部bean和级联属性用法详解

标签:广元 萍乡 江苏 大理 蚌埠 枣庄 衢州 衡水

巨人网络通讯声明:本文标题《详解Hibernate cascade级联属性的CascadeType的用法》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266