Hibernate的映射文件

来源:互联网 发布:海马助手mac版 编辑:程序博客网 时间:2024/05/22 18:41
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping>    <class name="com.test.model.User" table="t_user">        <id name="id">            <generator class=“identity“或class=“native"></generator>        </id>        <property name=“name” type=“java.lang.String”></property>    </class></hibernate-mapping>

<hibernate-mapping>中常用属性:

    package:该属性指定一个包前缀名,若`<class>`标签没有指定全限定类名,则默认使用该包前缀。
<class>中的属性:        name:指定该类的全限定类名。        table:若类名与数据库名不相同,则可以定义table属性指定数据库名。
<id>中的属性:        name:指定持久化类的标识属性名。        column:用来指定标识属性所映射的数据列的列名。若不设置该属性,则数据库列名与name属性值一致.        type:指定该标识属性的类型。可以是hibernate的类型,也可以是java类型,若是配置成java类型,则需要使用全限定类名。<id>标签中包含的<generator>标签用于配置hibernate的主键生成器。该标签的class属性指定hibernate的主键生成策略。常用的主键生成策略:                  (1)uuid:用一个128位的UUID算法生成字符串类型的标识符,这在网络中是唯一的。UUID被编码为一个32位十六进制数的字符串。                  (2)native:根据底层数据库的能力选择 identity、sequence 或者 hilo 中的一个。                  (3)assigned:让应用程序在调用 save() 之前为对象分配一个标识符。这是 <generator> 元素没有指定时的默认生成策略。
<property>标签属性:(1name: 属性的名字,以小写字母开头。 (2)column:可选 ,对应的数据库字段名。默认为属性名字。 也可以通过嵌套的<column>元素指定。 (3)type:可选,属性的类型。可以是hibernate的类型,也可以是java类型,若是配置成java类型,则需要使用全限定类名。 。 (4)unique:可选,使用DDL为该字段添加唯一的约束。 同样,允许它作为property-ref引用的目标。 (5not-null: 可选,使用DDL为该字段添加可否为空(nullability)的约束。(6length:指定该属性映射的数据列的长度。
0 0
原创粉丝点击