• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    详解Hibernate cascade级联属性的CascadeType的用法

    详解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和级联属性用法详解
    上一篇:jsp内置对象
    下一篇:Spring组件自动扫描详解及实例代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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