【极客营】Hibernate完成CRM的联系人的保存操作-技术分析之让某一方放弃外键的维护,为多对多做准备
作者:何征天
课程视频地址:https://ke.qq.com/course/273907
1.1. 技术分析之让某一方放弃外键的维护,为多对多做准备
1. 先测试双方都维护外键的时候,会产生多余的SQL语句。
* 想修改客户和联系人的关系,进行双向关联,双方都会维护外键,会产生多余的SQL语句。
* 产生的原因:session的一级缓存中的快照机制,会让双方都更新数据库,产生了多余的SQL语句。
2. 如果不想产生多余的SQL语句,那么需要一方来放弃外键的维护!
* 在<set>标签上配置一个inverse=”true”.true:放弃.false:不放弃.默认值是false
* <inverse="true">
1.1.1. inverse示例
问题:多余sql的问题
将没有关系的一个客户和联系人建立关系。(双方)
1.在TestOne2Many类中添加测试代码
//inverse放弃外键维护 @Test publicvoid run7(){ Session session = HibernateUtils.getCurrentSession(); Transaction tr = session.beginTransaction(); //获取一个客户 Customer c = session.get(Customer.class, 7L); //获取一个联系人 Linkman m = session.get(Linkman.class, 8L); //联系人与客户做双向关联 c.getLinkmans().add(m); m.setCustomer(c); tr.commit(); } |
产生的sql:多余sql
解决方法:
采用inverse属性来配置。
2. 修改Customer.hbm.xml
<set name="linkmans" inverse="true" > <key column="lkm_cust_id"></key> <one-to-many class="com.igeek.demo1.Linkman"/> </set> |
3. 修改中数据,再次测试,hibernate只发一条sql语句
一般,我们都让1方放弃外键维护权!
1.2. 技术分析之cascade和inverse的区别
1. cascade用来级联操作(保存、修改和删除) 在一方设置
2.inverse用来维护外键的 在一方设置
【极客营】Hibernate完成CRM的联系人的保存操作-技术分析之让某一方放弃外键的维护,为多对多做准备相关推荐
- “StarRocks 极客营” 重磅来袭,和技术大牛一起推开数据库梦想之门!
操作系统.编译器.数据库是软件工程师的梦之所向,对于大多数人而言,却是近在眼前.远在天边: 你是否曾渴望加入 Linux 这样伟大的社区,然觉门槛太高无从下手? 你是否也曾想象参与开发 MySQL 这 ...
- All Eyes on Docs! 练就火眼金睛,就来StarRocks 极客营
开放源代码运动的主要领导者--埃里克·雷蒙(Eric Steven Raymond)在他出版的<大教堂与集市>中描述了这样一个精彩的观点:只要有足够多的眼球关注,就可让所有软件缺陷浮现.他 ...
- StarRocks极客营 | 90天,17名新晋贡献者,SQL Planner 实战回顾
若能体验一个字符串的 SQL 怎么一步步在 StarRocks 被执行起来,对于 OLAP 开发者来说,能大大帮助理解整个框架和系统流程. 近日,由 StarRocks 社区举办的 SQL Plann ...
- 【CCTC 2017】来自Mesosphere、美团点评、hyper.sh、凡泰极客、深圳睿云的容器与运维技术实战...
[CSDN 现场报道]5月18日-19日,CCTC 2017中国云计算技术大会(Cloud Computing Technology Conference 2017,简称CCTC 2017)在北京朝阳 ...
- 首篇极客解题报告意外泄出!亚军竟有神操作?
导语 | 腾讯云+社区联合腾讯码客.腾讯安全平台部全新打造的创新赛事[腾讯极客挑战赛 | 鹅罗斯方块]正式落幕.玩鹅罗斯方块,玩点不一样!在短暂10天内,4570名参赛者或以自己的硬核技术诠释着 &q ...
- 百度SLG拿下前锤子科技CTO钱晨,还要合并小鱼在家? | 极客头条
点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」全日程揭晓,请扫码咨询 ↑↑↑ 整理 | 一一 出品 | AI科技大本营(id:rgznai100) 2016 年 7 月,锤子科技前 ...
- 阿里云IoT将举办第三届极客创新挑战赛,吸引全球极客参赛
摘要: 为支持和推动全球极客文化发展,近日,阿里云IoT宣布将举办第三届极客创新挑战赛(GXIC).该赛事是阿里云旗下IoT事业部所主办的智能创新比赛,本届大赛将首次对外开放征集报名参赛队伍.比赛将召 ...
- 极客时间App安卓版上线,让知识获取更加简单
在12月8日于京举办的 ArchSummit 全球架构师峰会上,极客邦科技正式宣布旗下 IT 知识服务产品-极客时间 App 继 iOS 版本发布后,蓄势一个月,安卓强势上线,已全面登陆各大应用市场. ...
- 华为百度美团驰援抗击疫情;自由软件基金会建议开源 Windows 7;印度超越美国成第二大智能手机市场 | 极客头条...
整理 | 唐小引 出品 | CSDN(ID:CSDNnews) 极客头条智能播报,由标贝科技提供技术支持. 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好,今天是大年初三,全国新型 ...
- 这样的极客大会千万别停!如今中国太需要为技术传道、为极客正名
雷刚 发自 凹非寺 量子位 报道 | 公众号 QbitAI 今年六一那天,一场极客游园会在北京激荡人心. 只是喧嚣已尽,热闹完结,才听说个中不易. 当时置身现场,只道一切寻常. 现在更想为此鼓与呼, ...
最新文章
- 比特币耶稣Roger Ver:比特币现金是比特币扩容问题的答案
- 机器学习第7天:深入了解逻辑回归
- 多线程共用全局变量可能存在的威胁
- GridView格式化数据失效
- IOS8如何获取当前UIViewController
- discovery_01
- LeetCode Hot100 ---- 排序专题
- java编程_Java编程和C语言的比较
- lunix下的redis数据库操作——list列表
- PVS-Studio C/C++/C++11 静态代码分析工具
- 其它行业半路转web前端,优势和不足有哪些?
- ie9服务器win2008系统离线安装包,IE9离线安装包完整版
- 单片机基础学-按键篇
- 电信机顶盒,废弃机顶盒复活,华为电信定制机顶盒,固件。设置关闭限制apk选项。安装自己所需的apk软件。
- 动画师入门必读 迪士尼影响至今的十二条动画黄金法则
- win8计算机修改密码,win8系统怎么设置开机密码
- 2011中国 · 移动开发者大会侧记
- java实现收藏功能
- debian安装tools
- Stegano之binwalk、C32Asm
热门文章
- PHPThinkphpmysql新生儿疫苗接种管理系统87023-计算机毕业设计项目选题推荐(附源码)
- google查找脚本
- 3 函数的增长概念(中英对照)
- docker搭建马里奥小游戏
- 蓝桥杯 2015初赛 星系炸弹
- 计算机信息技术基础pdf,计算机信息技术基础(核心教程).pdf
- IDEA一直Update Indice问题
- 京东金融移动端测试实践
- 将一个数组中的值按逆序重新存放。例如,原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8
- ajax滚动条动态加载,Ajax实现页面动态加载,添加数据