1.引入Hibernate的支持包。
2.寫好hibernate.cfg.xml
裏面涉及到的內容有:
JDBC連接參數
connection.driver_class、
connection.username、
connection.password、
connection.url、
dialect、
show_sql、
Hibernate C3P0連接池參數
hibernate.connection.provider_class、
hibernate.c3p0.max_size、
hibernate.c3p0.min_size、
hibernate.c3p0.timeout、
hibernate.c3p0.max_statements、
hibernate.c3p0.idle_test_period
註冊ORM映射文件
<mapping resource=“包名/類名.hbm.xml”>可以有多個。
3.寫ORM配置文件(文件名爲類名.hbm.xml)
對應屬性的配置(基本的都是name、column、type)
id的配置(name、column、type、generator)
一對一映射配置心得
共享主鍵配置:從表id生成方式爲forergn並且這個節點要包含param節點 配置one-to-one節點 例子
<id name="id" column="ID" type="integer">
<generator class="foreign">
<param name="property"> company</param>
</generator>
</id>
<one-to-one name="company" class="com.ORM.Company" constrained="true"/>
主表one-to-one節點 例子
<one-to-one name="login" class="com.ORM.Login" cascade="all" lazy="false"/>
唯一外鍵方式配置:主表配置one-to-one節點
<one-to-one name="client" class="com.ORM.Client" property-ref="address">
從表配置many-to-one節點
<many-to-one name="address" class="com.ORM.Address" column="ADDRESS" lazy="false" cascade="all" unique="true"/>
多對一映射配置
多對一單向映射:只在“多”的一方配置 類裏面有“一”的一方的對象<many-to-one>節點
<many-to-one name="customer" column="CUSTOMER_ID" class="com.ORM.Customer" lazy="false" not-null="true"/>
一對多雙向映射:雙方都要配置。“多”的一方配置同多對一單向映射配置完全相同
“一”的一方 類裏面要有“多”的一方的對象的集合配置set節點
<set name="orders" cascade="all" inverse="true" lazy="false">
<key column="CUSTOMER_ID"/>
<one-to-many class="com.ORM.Order"/>
</set>
一對多雙向自身關聯關係:配置同一對多雙向關聯,不同的是,主表跟從表都是一個表。配置在一個文件裏面就行。
多對多單向關聯:涉及到多對多的都會有連接表,連接表裏面存放的是兩個表裏面關聯的字段
<set name="items" table="selecteditems" lazy="true" cascade="save-update">
<key column="ORDERID"/>
<many-to-many class="com.ORM.Items" column="ITEMID"/>
</set>
多對多雙向關聯:在雙方都配置,方式同多對多單向映射配置,只是在一方配置上inverse就行。
映射組成關係:講一個大類分成兩個類。配置的時候配置一個組件就行。//客戶(client)裏面包含地址(address),地址分出來作爲一個類。
<component name="address" class=”com.ORM.Address">
<parent name="client"/>
<peoperty name="province" column="PROVINCE" type="string">
......
</component>
映射繼承關係:父類寫好,子類繼承父類,並擴展自己的屬性。映射配置文件只需要寫子類的配置就行。
集合映射:商品有視頻廣告(VIDEO)、使用技巧(TIPS)、圖片(PICTURE)字段,每個字段都有對應的一個表。
商品類裏面的videos屬性爲set集合,tips爲list集合,pictures爲map集合。
配置如下
<set name="videos" table="videos" lazy="false">
<key column="ITEMS_ID"/>
<element column="VIDEO" type="string" not-null="true"/>
</set>
<list name="tips" table="tips" lazy="false">
<key column="ITEMS_ID"/>
<index column="POSITION"/>
<element column="TIP" type="string"/>
</list>
<map name="pictures" table="pictures" lazy="false">
<key column="ITEMS_ID">
<index column="KEYNAME" type="string"/>
<element column="PICTURE" type="string"/>
</map>
Hibernate配置文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.