根元素hibernate-mapping
属性:
schema:数据库的schema名称
catalog:数据库的catalog名称
default-cascade:默认的级联方式 默认值为none
default-access:默认的属性访问方式 默认值为property,通过getter/setter方法访问属性,若设为field,则会忽略getter/setter方法,通过反射的方式访问属性
default-lazy:对没有指定延迟加载的映射类和集合设定为延迟加载 默认值为true
auto-import:设定此映射文件中是否可以在HQL中使用非完整的类名(不包括包名) 默认值为true
package:此映射文件中类默认的包名
子元素:
meta:用于设置类或属性的元数据属性
typedef:定义新的Hibernate数据类型
import:显示的引用一个类,避免在HQL语句中使用全类名
class:定义一个持久类
subclass:在进行多态持久化时定义父类的子类
joined-subclass:定义一个连接子类
union-subclass:定义一个联合子类
query:定义一个HQL查询
sql-query:定义一个SQL查询
filter-def:定义过滤器
class元素
属性:
name:持久化类的全名
table:对应的数据库表名 默认值为类名
discriminator-value:子类识别标识 默认值为类名
mutable:表明该类的实例是否是可变的 默认值为false
schema:数据库的schema名称
catalog:数据库的catalog名称
proxy:指定延迟加载代理类
dynamic-update:指定用于update的SQL语句是否动态生成 默认值为false
dynamic-insert:指定用于insert的SQL语句是否动态生成 默认值为false
insert-before-update:设定在Hibernate执行update之前是否通过select语句来确定对象是否确实被修改了,如果该对象的值没有改变,update语句将不会被执行 默认值为false
polymorphism:指定使用多态查询的方式 默认值为implicit
where:指定一个附加的SQL语句的where条件
persister:指定一个Persister类
batch-size:设定批量操作记录的数目 默认值为1
optimistic-lock:指定乐观锁定的策略 默认值为vesion
lazy:指定是否使用延迟加载
entity-name:实体名称 默认值为类名
check:指定一个SQL语句用于Schema前的条件检查
rowid:指定是否支持ROWID
subselect:将不可变的只读实体映射到数据库的子查询中
abstract:用于在联合子类中标识抽象的超类 默认值为false
子元素:
meta:设置类或属性的元数据属性
subselect:定义一个子查询
cache:定义缓存的策略
synchronize:定义持久化类所需要的同步资源
comment:定义表的注释
id:映射类中与数据库对应表主键相对应的标识字段(表中为独立字段的主键)
composite-id:映射类中与数据库对应表主键相对应的标识字段(表中为联合字段的主键)
natural-id:声明一个唯一的业务主键
discriminator:定义一个鉴别器
vesion:指定表所包含的附带版本信息的数据
timestamp:指定表中包含时间戳的数据
property:定义一个持久化类的属性
many-to-one:定义对象间的多对一的关联关系
one-to-one:定义对象间的一对一的关联关系
component:定义组件映射
dynamic-component:定义动态组件映射
properties:定义一个包含多个属性的逻辑分组
any:定义any映射类型
map:map类型的集合映射
set:set类型的集合映射
list:list类型的集合映射
bag:bag类型的集合映射
array:array类型的集合映射
primitive-array:primitive-array类型的集合映射
query-list:映射由查询返回的集合
join:将一个类的属性映射到多张表中
sub-class:声明多态映射中的子类
joined-subclass:生命多态映射中的来连接子类
union-subclass:声明多态映射中的联合子类
loader:定义持久化对象的加载器
sql-insert:使用定制的SQL语句执行insert操作
sql-update:使用定制的SQL语句执行update操作
sql-delete:使用定制的SQL语句执行delete操作
filter:定义Hibernate使用的过滤器
query&