首页 » Java » Hibernate之映射

Hibernate之映射

原文 http://blog.csdn.net/a3060858469/article/details/78016908

2017-09-18 12:20:10阅读(245)

基础映射
实体映射技术作为类与表之间的联系纽带,在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

最新发布

CentOS专题

关于本站

5ibc.net旗下博客站精品博文小部分原创、大部分从互联网收集整理。尊重作者版权、传播精品博文,让更多编程爱好者知晓!

小提示

按 Ctrl+D 键,
把本文加入收藏夹

天天可领!最高99块!土豪站长12月发红包啦!

关闭
支付宝红包