Hibernate之映射

来源:互联网 发布:手机淘宝6.6.0版本 编辑:程序博客网 时间:2024/06/09 13:47

基础映射
实体映射技术作为类与表之间的联系纽带,在ORM实现中起着至关重要的作用。对于Hibernate用户而言,映射关系更多地体现在配置文件的维护过程中。Hibernate选用XML作为映射配置文件的基础形式。
实体映射的核Hibernate中,类表映射主要包括:
类/表映射

<class        name="ClassName"     (1)                                         table="tableName"    (2)                                            dynamic-update="true|false"     (3)                             dynamic-insert="true|false"/>   (4)

(1) name (可选): 持久化类(或者接口)的Java全限定名。 如果这个属性不存在,Hibernate将假定这是一个非POJO的实体映射。
(2) table (可选 - 默认是类的非全限定名): 对应的数据库表名。
(3) dynamic-update (可选, 默认为 false): 指定用于UPDATE 的SQL将会在运行时动态生成,并且只更新那些改变过的字段。
(4) dynamic-insert (可选, 默认为 false): 指定用于INSERT的 SQL 将会在运行时动态生成,并且只包含那些非空值字段。

主键id映射

<id        name="propertyName"  (1)        type="typename"      (2)        column="column_name" (3)        unsaved-value="any|none|null|id_value“>     (4)         <generator class="generatorClass"/>        (5)</id>

(1)、name (可选) :标识属性的名称。
(2)、type(可选):标识Hibernate类型的名字。
(3)、column(可选-默认为属性名):对应数据库表的主键字段的名字。
(4)、unsaved-value(可选-默认为null):这个值用来判断对象是否要保存。
(5)、主键生成方式。

属性/字段映射

<property        name="propertyName"              (1)        column="column_name"             (2)        type="typename"                  (3)        update="true|false"              (4)        insert="true|false"              (4)    formula=“arbitrary SQL expression”   (5)/>

(1) Name:指定了映射类中的属性名为” propertyName”,此属性将被映射到指定的库表字段。
(2) column(可选):指定了库表中对应映射类属性的字段名。
(3) type(可选):指定了映射字段的数据类型
(4) update, insert (可选 - 默认为 true) :表明在用于UPDATE 和/或 INSERT的SQL语句中是否包含这个字段。
(5) formula (可选): 一个SQL表达式,定义了这个计算(computed) 属性的值。计算属性没有和它对应的数据库字段。

http://blog.csdn.net/bestone0213/article/details/48414171

集合映射
http://ryxxlong.iteye.com/blog/631878
http://blog.csdn.net/yerenyuan_pku/article/details/52745486
http://www.cnblogs.com/guanghe/p/6093441.html

关联映射
http://www.cnblogs.com/likailan/p/3427093.html

原创粉丝点击