zoukankan      html  css  js  c++  java
  • Hibernate双向关联的增删改操作的属性

    双向关联关系下的增删改操作的属性
            
                1.cascade属性:  eg:<set name = "emps" cascade="sava-update"></set>
                
                            none:当Session操纵当前对象时,忽略其他关联的对象,他是cascade属性值得默认值
                            sava-update:当通过Session的sava()、update()、及saveOrUpdate()方法来保存或更新当前对象时,
                                            级联保存所有关联的新建的瞬时状态的对象,并且级联更新所有关联的游离状态的对象
                            delete:当通过Session的delete()方法删除当前对象时,会级联删除所有关联的对象
                            all:包含save-update、delete的行为
                
                
                2.<set>元素的inverse属性:
                            
                            "inverse"直译为“反转”  
                            inverse=“false” 为主动方,由主动方负者维护关联关系 默认值
                            inverse=“true”
                
                    
                    结论: 1.在映射一对多的双向关联关系是,应该在“one”方把<set>元素的inverse属性设为true,提高应用的性能
                           2.在建立两个对象的双向关联时,应该同时修改关联的对象的相应属性

                3.<set>元素的order-by属性
                        eg:<set name = "emps" inverse="true" order-by="ename asc">
                            
                4.当一对多或者多对多用List集合进行绑定时,在映射文件中  可以把"set"标签改为“bag”标签
                    同理:用set集合进行绑定时,在映射文件中  可以把"bag"标签改为“set”标签

    作者:JamelAr
    个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!
    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

    本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    建设Kubernetes生产环境的16条建议
    深度长文:深入理解Ceph存储架构
    10个最危险的Linux命令,希望你牢记在心
    完美排查入侵者的 10 个方法和 1 个解决思路
    基于Docker&Kubernetes构建PaaS平台基础知识梳理
    Linux入门进阶
    (七)服务接口调用-OpenFeign
    (六)服务调用负载均衡-Ribbon
    (五)Eureka替换方案-Consul
    (四)Eureka替换方案-Zookeeper
  • 原文地址:https://www.cnblogs.com/JamelAr/p/6489917.html
Copyright © 2011-2022 走看看