[b]hiebrnate有哪些沟壑[/b]:
1、Session是本次使用到的持久对象的容器,并内在使用jdbc的connection派发sql
2、Session的生命周期,不同的应用可能有不同的策略,是一次数据操作一个Session,或一个用户请求共享同一个Session?
后者可能使用到了Open Session In View Filter/Interceptor.或hibernate3的sessionFactory.getCurrentSession()
3、对象与容器的几种关系,以及如何转化?同样Id的对象是否可以有多个copy在容器中?
4、session flush是什么意思,什么时候会(自动)flush
5、load或object的many-to-one可能会用到proxy,这是什么意思?lazy-loading与此有关。
6、hibernate对集合的理解和处理
7、hibernate对cascade的理解和处理
。。。

[b]hibernate有哪些局限[/b]:1、session是一个容器,一次session装载过多object,会爆棚=>解决之道:evict, bulk operation
2、session总是装载一个对象的所有属性列,如果该属性数目够大(>50),会对性能有所影响=>解决之道:对类或表列进行适当分拆
3、session默认总是对持久对象建立snapshot,所以1个对象将占用2倍的空间。=>一般这个不造成问题,除非是以上 1 的情况
。。。

[b]hibernate"奇怪"的地方[/b]:
1、save/perist一个对象时,为什么有的对象立即发送一个insert语句,有的不是:
这和主建策略有关,程序自己assign的主键,hibernate不会立即发送insert,其他的会

2、设置了join策略,但对query查询无效
对对象的某个to-one的属性设置join策略只load/get或nav到该对象时有效,query查询无效,哪怕该查询只返回一个对象。

3、修改对象时候,为什么抛出错误:
在Session的生命周期内,已经被Session管理的对象的数据库更新语句会自动被hibernate检测在必要的时候发送。
所以,程序没有必要调用dao.update/object.update(in active record pattern)的方法。如果调用了dao.update方法,则会抛出该错误。

4、那为什么同样的程序我调用就是错误,别人update就可以调用,而且必须调用才会更新到数据库?
那是因为“别人”的session周期很短,和“我自己”使用的Session周期策略不一样,他调用update时所使用的session已经不是前一句load/get/query该对象后的session。
也有可能是“别人”update的对象和刚才load/get/query出来的对象是同一个对象(==返回true),此时update方法是多余的,但是调用了也不会发生错误(update的意思是:将一个还没有被给定session管理的detached对象交给session管理,但是如果该对象本来已经被session管理了,session也不会抛出错误)
5、不想更新某个数据,但是hibernate却自动给我更新到数据库,真是想不到:
一个对象如果被Session管理(之前从session load/get/query出来或该对象被update到session后),如果该对象的属性变更了,这会被hibernate检测到,会自动被派发update sql,所以不要去更新他的值,如果本意不是要把“更新持久化”到数据库的话。
。。。

[b]小心:
二级缓存 总是要特别的注意,这是一个大策略,不是API级别的决定。[/b]

以上观点均被本人实践过,也仅为片面摘要。

hiebrnate有哪些沟壑--原作Qieqie相关推荐

  1. 天锋w2019_足以乱真的复刻:天锋W2019,堪比原作的外观设计和配置

    随着现代人生活节奏的加快,手机也成了日常生活的必需品.无论是在工作还是生活中,人们都无法离开手机.除了拨打和接听电话,手机还能作为办公和生活助手.对于商务人士来说,手机还是一种身份的象征,能体现其高端 ...

  2. 《陰陽師·付喪神卷·迷神》原作:夢枕貘

    "其心﹐恒常不动﹐迷离却胜浮云:其目﹐有缚鬼裂魔之光:其口﹐明艳朱唇之下有利舌如刀:其女﹐时有美貌妖魅相随:其友﹐质实心热﹐真心惟他莫许." [录入]陰陽師 付喪神卷之迷神 原作: ...

  3. 基于DEM的沟壑特征分析

    您的位置:第十二章 基于DEM的沟壑特征分析 第十二章 1.本章主题编号 专题序号 专题名称 子专题号 子专题名称 子专题主要内容 实验内容 备注 12 基于DEM的沟壑特征 分析 1 基于DEM的沟 ...

  4. Robotaxi卡位战背后:滴滴的资本焦虑与技术沟壑

    在这场并不短的赛跑中,谁的技术更为成熟,谁的数据更为精准全面,谁就离商业化更进一步,而非单纯的营销和市场卡位. 一点财经 李 婧|作者 严 睿|编辑 滴滴,似乎稍显"反常". 20 ...

  5. html文字冒险游戏,文字类谍战交互游戏能有这么好玩?全靠这部超神原作

    如果说起<潜伏>,大家可能会有一些印象,可能是和爸爸妈妈在电视上看到的那部红遍大江南北的谍战大剧,孙红雷那张板着的扑克脸. 其实吧,还有一部叫<潜伏之赤途>(上下2部并没有关联 ...

  6. 踏过沟壑,苏宁易购终将价值回归

    7月5日晚间,苏宁易购发布了股权转让的最新方案,将引入新新零售基金二期的战投.这则重磅消息,无疑为苏宁易购的几十万投资者注入了一针强心剂. 当尘埃落定,一切开始向好发展,苏宁易购已经度过了最艰难的一段 ...

  7. JS的IE和Firefox兼容性汇编(原作:hotman_x)- -

    以下以 IE 代替 Internet Explorer,以 MF 代替 Mozzila Firefox 1. document.form.item 问题     (1)现有问题:         现有 ...

  8. LInux CentOS6 无人值守安装实例(原作)

    Linux CentOS6 无人值守安装: 繁重多台服务器安装是一件既没有技术含量有大量浪费时间的过程,无人值守安装是一个可以很方便的定制多台服务器的优选解决方案,一下就来介绍下我的无人值守安装案例: ...

  9. 《陰陽師·付喪神卷·瓜仙人》原作:梦枕貘

    陰陽師--付喪神卷 之 瓜仙人            作者:梦枕さとゐ 一             高大柿樹下,十餘名役夫正在休息.             七月三日--中午時分.           ...

最新文章

  1. 分布式环境下的并发问题
  2. python ftp 上传
  3. 树莓派+神经计算棒2实时人脸检测
  4. 存储函数和存储过程的区别
  5. impdp导入表结构和表数据_ORACLE数据库如何用datapump工具导出表结构然后导入到其它Schema下面...
  6. [机器学习] Apriori算法
  7. 开源合规处理方法_经济高效的开源软件许可合规模型
  8. HashMap 和 ConcurrentHashMap 的区别
  9. JADE学习笔记1:JADE简介与配置
  10. 神经元模型 Hodgkin Huxley model
  11. 崩溃,执行DELETE没加WHERE条件,该怎么办?
  12. 一、jsp和Servlet基础理论及jstl和EL表达式用法
  13. HTL里面使用sling model的时候传参问题
  14. 笔记本重装windows系统,office全家桶消失的解决方案
  15. 百度网盘漏洞,2019年不限速方法,一直享受高速加速下载!
  16. 【电脑版微信文件存储在什么位置】
  17. PPT卡死了?只需要这几个小技巧,瞬间帮你提速!
  18. 微服务开放平台接口设计
  19. 安装交叉编译工具:arm-himix200-linux
  20. 没有一颗凑数镜头,拍照最佳的三款手机,均是影像机皇标准

热门文章

  1. ICP备案与ICP许可证有什么区别?怎么办理ICP许可证?
  2. ARM标准汇编与GNU汇编
  3. 【网络】tftp协议、简单实用tftpd32工具在主机和虚拟机之间传输文件
  4. 工程流体力学笔记暂记30 (管道水力计算)
  5. 教育部统考课程-计算机,教育部统考课程—《计算机应用基础》作业练习三.doc...
  6. 【CPA | 会计】【课程笔记】07 长期股权投资与合营安排(一)
  7. 买新电脑要考虑的一些问题
  8. Dism磁盘清理工具(文件大小2M)
  9. 同样是保存模型,model.save()和model. save_weights ()有何区别
  10. java判断字符串是中文乱码_java 检测字符串中文乱码