
Hibernate
iteye_7157
这个作者很懒,什么都没留下…
展开
-
Hibernate Object lifecycle
[img]http://hfhwan.iteye.com/upload/attachment/88225/08cda5e2-68e8-36ac-9130-61b2afd7719f.jpg[/img] [code="java"] Session session = sf.openSession(); Transaction ts = session.beginTransaction();...2009-03-27 16:35:03 · 90 阅读 · 0 评论 -
悲观锁
悲观锁 悲观锁的实现,通常依赖于数据库机制,在整个过程中将数据锁定,其它任何用户都不能读取或修改 乐观锁 大多数基于数据版本记录机制(version)实现,一般是在数据库表中加入一个version字段 读取数据时将版本号一同读出,之后更新数据时版本号加一,如果提交数据时版本号小于或等于数据表中 的版本号,则认为数据是过期的,否则给予更新...原创 2009-08-14 14:56:05 · 130 阅读 · 0 评论 -
lazy策略
hibernate lazy策略可以使用在: * 标签上,可以取值:true/false * 标签上,可以取值:true/false需要类增强工具 * 标签上,可以取值:true/false/extra * 单端关联上,可以取值:false/proxy/noproxy lazy概念:只有真正使用该对象时,才会创建,对于hibernate而言,正真使用的时候才会发出sql ...原创 2009-08-14 14:47:17 · 137 阅读 · 0 评论 -
多对多关联映射
hibernate多对多关联映射(单向User---->Role) 具体映射方式: -------------------------------------------------------------------------------- hibernate多对多关联映射(双向UserRole) 映射方法: ...原创 2009-08-14 14:38:41 · 114 阅读 · 0 评论 -
一对多映射
hihernate一对多关联映射(单向Classes----->Student) 一对多关联映射利用了多对一关联映射原理 多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一 一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多 也就是说一对多和多对一的映射策略是一样的,只是站的角度不同 在一一端维护关系的缺点: * 如果将...原创 2009-08-14 13:24:02 · 142 阅读 · 0 评论 -
zz多对多关系中Set的查询
一个老师教多个学生,一个学生有多个老师。 class Teacher { String id; String name; Set students; } class Student { String id; String name; Set teachers; } 现在要查询教某一个学生(name为xxx)的老师。 HSQL方法一:(性能最优) selec...2010-03-16 10:36:30 · 110 阅读 · 0 评论 -
enum类型映射到hbm.xml配置文件
jdk1.5推出的enum类型,在hibernate中一般是用注释做映射,这也是配合1.5提供的注释功能。 但是如果要把enum类型映射到传统的xml配置文件中,怎么办? 找到一种比较简单的方法。 <property name="type" column="note_type" length="10"> <type name="org.hibernate.ty...2009-12-15 11:36:04 · 215 阅读 · 0 评论 -
一对一关联映射
hibernate一对一主键关联映射(单向关联Person---->IdCard) 一对一主键关联映射:让两个实体对象的id保持相同,这样可以避免多余的字段被创建 具体映射: idCard -----------------------------------------------------------------...原创 2009-04-07 15:46:29 · 113 阅读 · 0 评论 -
多对一
hibernate多对一关联映射 关联映射的本质: * 将关联关系映射到数据库,所谓的关联关系是对象模型在内存中的一个或多个引用 会在多的一端加入一个外键,指向一的一端,这个外键是由 中的column属性定义的,如果忽略了这个属性那么默认的外键与实体的属性一致 标签的定义示例: * 理解级联的含义? * 是对象的连锁操作 ...原创 2009-04-07 14:48:27 · 83 阅读 · 0 评论 -
缓存使用
hibernate一级缓存 一级缓存很短和session的生命周期一致,一级缓存也叫session级的缓存或事务级缓存 session中的map来实现 那些方法支持一级缓存: * get() * load() * iterate(查询实体对象) (select * from 查询普通属性, 不支持) 不支持list(),每次...原创 2009-08-20 14:00:43 · 99 阅读 · 0 评论