解决实体类或属性名与数据库关键字冲突
除了在hbm.xml中加column属性或table属性来改变列名或数据库表名字外,如果移植数据后不准改数据库属性名的话还可以在column属性或table属性加上反引号把它当做字符串来处理。
cascade和inverse
Casade用来说明当对主对象进行某种操作时是否对其关联的从对象也作类似的操作,常用的cascade:none,all,save-update ,delete, lock,refresh,evict,replicate,persist,merge,delete-orphan(one-to-many) 。一般对many-to-one,many-to-many不设置级联,在<one-to-one>和<one-to-many>中设置级联。
inverse表“是否放弃维护关联关系”(在Java里两个对象产生关联时,对数据库表的影响),在one-to-many和many-to-many的集合定义中使用,inverse=”true”表示该对象不维护关联关系;该属性的值一般在使用有序集合时设置成false(注意hibernate的缺省值是false)。one-to-many维护关联关系就是更新外键。many-to-many维护关联关系就是在中间表增减记录。
注: 配置成one-to-one的对象不维护关联关系
上次提过的inverse,在list,array等有序的容器里面是不能使用的,很简单,都放弃多关系的维护了,还会在乎元素的顺序么。
还有一点,在多的一端,不允许放弃对关系的维护。
多对多关系的维护,双方处于平等地位,那么谁来维护都是可以的,注意多对多关系的维护是在中间表插入一条新的记录,如果双方都维护,那么就不是重复update语句的问题了,就会产生插入异常。
generator子标签常用class属性
increment Hibernate内部自己做累加,而不是数据库中做累加。所以集群下不要使用。
indentity 数据库标示符自增长
squence Oracle常用
hilo 高低位 数据库保存高位字段,Hibernate累加地位字段,新插入数据由这两个字段组成,不会重复。
uuid 生成主键不用访问数据库,Hibernate生成,插入效率很高,可移植性好,而像indentity,squence插入时都要先访问数据库。主键string类型,查询时候效率不高。
native 根据数据库底层能力选择identity squence hilo
assigned 手工分配主键
foreigh 外键引用作为主键
N+1次查询和懒加载
1.用Query.iterator可能会有N+1次查询。
2.懒加载时获取关联对象。
3.如果打开对查询的缓存即使用list也可能有N+1次查询。
分享到:
相关推荐
NULL 博文链接:https://springrisingsun.iteye.com/blog/477718
其中的内容涉及Hibernate 的使用,以及一部分笔者实际咨询项目中的经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多技术专家交流所得。既来于斯,则归于斯。希望能聊有所用。本文并非试图替代...
Hib其中的内容涉及Hibernate 的使用,以及一部分笔者实际咨询项目中的 经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多 技术专家交流所得。 既来于斯,则归于斯。希望能聊有所用。 ...
其中的内容涉及Hibernate 的使用,以及一部分笔者实际咨询项目中的经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多技术专家交流所得。 既来于斯,则归于斯。希望能聊有所用。 本文并非...
本书分为6大部分,共33章,介绍了Struts1框架、Hibernate框架、Spring框架和Struts2框架的开发环境配置、框架技术基础,Struts1框架和Spring框架的整合,Struts1框架和Hibernate框架的整合,Struts1框架、Hibernate...
经验积累,另一方面,大部分是笔者在 Hibernate 的官方论坛中与众多 技术专家交流所得。 既来于斯,则归于斯。希望能聊有所用。 本文并非试图替代Hibernate Reference,相对而言,Hibernate Reference 的编写目的...
这些包为Hibernate3的核心包,开发相关的程序时只需要把这些包加载到项目的lib目录下即可。
经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多 技术专家交流所得。 既来于斯,则归于斯。希望能聊有所用。 本文并非试图替代Hibernate Reference,相对而言,Hibernate Reference 的编写目的是为...
经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多 技术专家交流所得。 既来于斯,则归于斯。希望能聊有所用。 本文并非试图替代Hibernate Reference,相对而言,Hibernate Reference 的编写目的...
本书由希赛IT教育研发中心组织编写,是关于当前流行的开源框架技术Struts 2、Hibernate 3和Spring 2的整合书籍。本书详尽分析了这3种...对于缺乏项目实战经验的程序员来说,通过本书的学习,可快速积累项目开发经验。
本书由希赛IT教育研发中心组织编写,是关于当前流行的开源框架技术Struts 2、Hibernate 3和Spring 2的整合书籍。本书详尽分析了这3种...对于缺乏项目实战经验的程序员来说,通过本书的学习,可快速积累项目开发经验。
commons-collections-3.1.jar hibernate3.jar hibernate-jpa-2.0-api-1.0.0.Final.jar javassist-3.4.ga.jar slf4j-api-1.6.1.jar
这是本人再学习hibernate过程中的,经验总结和积累,对初学hibernate的人很有帮助
本书内容涉及hibernate的使用,以及一部分笔者实际咨询项目中的经验积累,另外大部分是笔者在hibernate的官方论坛与众多技术专家交流所得。希望对大家有所帮助。
这里整理了齐全的jar包 ,我是在开发的过程中积累的,很多是跟别人要的,希望能帮到系伙伴们.不够的请联系我
NULL 博文链接:https://sunlongan666.iteye.com/blog/1889563
很好的Hibernate笔记,来自本人长期的项目积累
hibernate 学习笔记,有很多积累下来的东西,也有个人的心得。
里面的包蛮全的 而且没有什么冲突 是我自己项目过程中积累下来的 可以放心使用
本书由希赛IT教育研发中心组织编写,是关于当前流行的开源框架技术Struts 2、Hibernate 3和Spring 2的整合书籍。本书详尽分析了这3种...对于缺乏项目实战经验的程序员来说,通过本书的学习,可快速积累项目开发经验。