![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hibernate
文章平均质量分 81
huoligg
这个作者很懒,什么都没留下…
展开
-
回顾总结1
一、实体对象的生命周期 实体对象的生命周期在Hibernate应用中是一个很关键的概念,正确的理解实体对象的生命周期将对我们应用Hibernate做持久层设计起到很大的作用。而所谓的实体对象的生命周期就是指实体对象由产生到被GC回收的一段过程。在这过程中我们需要理解的就是实体对象生命周期中的三种状态。 1、 自由状态(Transient)所谓的Transient状态,即实体对象在内...2009-03-09 15:18:44 · 117 阅读 · 0 评论 -
default-access="field ¦property ¦ClassName"
default-access="field ¦property ¦ClassName" 这里field表示Hibernate直接读取类中的字段值。 这种方式如果你在业务中不需要getter和setter的话,就可以不用写了。 这时,可以设置属性为不可变,可以不用执行脏检查。 property表示Hibernate通过getter和setter读取。 这种方式可以在getter和setter中做额...原创 2008-12-25 11:54:23 · 256 阅读 · 1 评论 -
native与assigned
在用Hibernate的时候,当有表中的主键是库自动生成的时候将使用native。<generator class="native"></generator>而当是自己添加的时候则需要改为assigned。<generator class="assigned"></generator>否则将会出现异常! 说说我的实际情况 我在sql里头有设置主键,然...2008-12-24 15:53:45 · 253 阅读 · 0 评论 -
subclass的用法
看到jBPM中大量使用了subclass的用法,应该说这个是比较OO的,设计的非常合理。 (一)、首先先去看看Hibernate的subclass: 1.对于“每一个类继承树对应一个表”的策略来说,就需要使用<subclass>定义。 <subclass> name="className" //子类的全名 discrimi...原创 2008-12-24 11:15:47 · 1036 阅读 · 0 评论 -
Hibernate之component、composite-id、collection映射
Hibernate之component、composite-id、collection映射 2008-11-26 21:26 1、component映射 在hibernate中,component是某个实体的逻辑组成部分,它与实体的根本区别是没有oid,component可以成为是值对象(DDD) 采用component映射的好处:它实现了对象模型的细粒度划分,层次会更分明,复用率会更高...原创 2008-12-24 11:07:06 · 220 阅读 · 0 评论 -
discriminator-value
可能经常遇到这样的情况: 在数据库表中会有这样的一个字段用来区别记录的属性,如:在客户表中有一个字段表示客户级别,当这个记录为A时是一级客户,为B时是二级客户。在用hiberante做OR表示时类可能是这样的: public class Customer{ private String flag; //表示客户的级别 ... ...原创 2008-12-24 10:57:19 · 299 阅读 · 0 评论 -
关于unsaved-value
从夏昕的 hibernate 开发指南中可以看到他介绍的 “关于unsaved-value”: 在非显示数据保存时,hibernate将根据这个值来判断对象是否需要保存。所谓显式保存,是指代码中明确调用session 的save、update、saveorupdate 方法对对象进行持久化。如:session.save(user);而在某些情况下,如映射关系中,hibernate 根据级联(cas...原创 2008-12-11 17:01:58 · 119 阅读 · 0 评论 -
O/R Mapping基础(续二)
子类(subclass) 最后,多态持久化需要为父类的每个子类都进行声明。对于我们建议的“每一棵类继承树对应一个表”的策略来说,就需要使用<subclass>声明。 <subclass name="ClassName"(1) discriminator-value="discriminator_value"(2) proxy="ProxyInterface"(3)...原创 2008-11-21 20:56:24 · 146 阅读 · 0 评论 -
O/R Mapping基础(续一)
多对一(many-to-one) 通过many-to-one元素,可以定义一种常见的与另一个持久化类的关联。这种关系模型是多对一关联。(实际上是一个对象引用。) <many-to-one name="propertyName"(1) column="column_name"(2) class="ClassName"(3) cascade="all|none|save-updat...原创 2008-11-21 20:50:26 · 130 阅读 · 0 评论 -
O/R Mapping基础
映射声明(Mapping declaration) 对象和关系数据库之间的映射是用一个XML文档(XML document)来定义的。这个映射文档被设计为易读的,并且可以手工修改。映射语言是以.NET为中心的,意味着映射是按照持久化类的定义来创建的,而非表的定义。 请注意,虽然很多Hibernate用户选择手工定义XML映射文档,也有一些工具来生成映射文档,包括XDoclet,Mi...原创 2008-11-21 20:38:41 · 110 阅读 · 0 评论 -
回顾总结2
五、一对多关系映射(回归一个班级只有多个学生) 1、 基于外键关联的单向一对多关联 <set name=”students”> <key column=”clazz_id&r2009-03-09 15:29:38 · 88 阅读 · 0 评论 -
Hibernate Cache
Cache In Hibernate HIBERNATE中的CACHE有两级. 一级是在Session范围内的CACHE. 即每个Session有自己的一个CACHE, 当前操作的对象都会被保留在CACHE中. 但是Session关闭后这个CACHE也就没有. 可见这级CACHE的生命期是很短的. 另一级CACHE是在SessionFactory范围的, 可以被来自同一个SessionFactor...原创 2008-12-25 17:02:33 · 186 阅读 · 0 评论