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

本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/JamelAr/p/6489917.html