精通Hibernate:第一个Hibernate应用(1)(2)
分享于 点击 43388 次 点评:43
六、创建对象-关系映射文件Customer.hbm.xml
- <?xml version="1.0"?>
- <!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <hibernate-mapping>
- <class name="mypack.Customer" table="CUSTOMERS">
- <id name="id" column="ID" type="long">
- <generator class="increment"/>
- </id>
- <property name="name" column="NAME" type="string" not-null="true" />
- <property name="email" column="EMAIL" type="string" not-null="true" />
- <property name="password" column="PASSWORD" type="string" not-null="true"/>
- <property name="phone" column="PHONE" type="int" />
- <property name="address" column="ADDRESS" type="string" />
- <property name="sex" column="SEX" type="character"/>
- <property name="married" column="IS_MARRIED" type="boolean"/>
- <property name="description" column="DESCRIPTION" type="text"/>
- <property name="image" column="IMAGE" type="binary"/>
- <property name="birthday" column="BIRTHDAY" type="date"/>
- <property name="registeredTime" column="REGISTERED_TIME" type="timestamp"/>
- </class>
- </hibernate-mapping>
<id>元素映射OID
<generator>子元素用来设定标识符生成器。Hibernate提供了提供了多种内置的实现。
<property>元素映射值类型属性
- name属性:指定持久化类的属性的名字。
- column属性:指定与类的属性映射的表的字段名。
- type属性:指定Hibernate映射类型。Hibernate映射类型是Java类型与SQL类型的桥梁。
采用XML文件来配置对象-关系映射的优点:
- Hibernate既不会渗透到上层域模型中,也不会渗透到下层数据模型中。
- 软件开发人员可以独立设计域模型,不必强迫遵守任何规范。
- 数据库设计人员可以独立设计数据模型,不必强迫遵守任何规范。
- 对象-关系映射不依赖于任何程序代码,如果需要修改对象-关系映射,只需修改XML文件,不需要修改任何程序,提高了软件的灵活性,并且使维护更加方便。
用户点评