1. 程式人生 > >如何寫一個SSH項目(二)hibernate.xml配置

如何寫一個SSH項目(二)hibernate.xml配置

手工 多個 元素 數據庫 動態修改 type 轉載 asc span

我只是知識的搬運工。

(轉載)

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<!-- 
<hibernate-mapping>一般不去配置,采用默認即可。
default-cascade="none":默認的級聯風格,表與表聯動。
default-lazy="true":默認延遲加載
-->
<hibernate-mapping>

<!-- 
<class
>:使用class元素定義一個持久化類。 name="cn.javass.user.vo.UserModel":持久化類的java全限定名; table="tbl_user":對應數據庫表名; mutable="true":默認為true,設置為false時則不可以被應用程序更新或刪除; dynamic-insert="false":默認為false,動態修改那些有改變過的字段,而不用修改所有字段; dynamic-update="false":默認為false,動態插入非空值字段; select-before-update="false":默認為false,在修改之前先做一次查詢,與用戶的值進行對比,有變化都會真正更新; optimistic
-lock="version":默認為version(檢查version/timestamp字段),取值:all(檢查全部字段)、dirty(只檢查修改過的字段)、 none(不使用樂觀鎖定),此參數主要用來處理並發,每條值都有固定且唯一的版本,版本為最新時才能執行操作; --> <class name="cn.javass.user.vo.UserModel" table="tbl_user" dynamic-insert="true" dynamic-update="true" optimistic-lock="version"> <!-- <id>:定義了該屬性到數據庫表主鍵字段的映射。 name
="userId":標識屬性的名字; column="userId":表主鍵字段的名字,如果不填寫與name一樣; --> <id name="userId"> <!-- <generator>:指定主鍵由什麽生成,推薦使用uuid,assigned指用戶手工填入。 --> <generator class="uuid"/> </id> <!-- <version/>:使用版本控制來處理並發,要開啟optimistic-lock="version"和dynamic-update="true"。 name="version":持久化類的屬性名,column="version":指定持有版本號的字段名; --> <version name="version" column="version"/> <!-- <property>:為類定義一個持久化的javaBean風格的屬性。 name="name":標識屬性的名字,以小寫字母開頭; column="name":表主鍵字段的名字,如果不填寫與name一樣; update="true"/insert="true":默認為true,表示可以被更新或插入; --> <property name="name" column="name" /> <property name="sex" column="sex"/> <property name="age" column="age"/> <!-- 組件映射:把多個屬性打包在一起當一個屬性使用,用來把類的粒度變小。 <component name="屬性,這裏指對象"> <property name="name1"></property> <property name="name2"></property> </component> --> <!-- <join>:一個對象映射多個表,該元素必須放在所有<property>之後。 <join table="tbl_test:子表名"> <key column="uuid:子表主鍵"></key> <property name="name1:對象屬性" column="name:子表字段"></property> </join> --> </class> </hibernate-mapping>

如何寫一個SSH項目(二)hibernate.xml配置