Hibernate配置檔案和對映元素解釋
阿新 • • 發佈:2019-01-31
<class
name="ClassName"
table="tableName"
discriminator-value="discriminator_value"
mutable="true|false"
schema="owner"
proxy="ProxyInterface"
dynamic-update="true|false"
dynamic-insert="true|false"
select-before-update="true|false"
polymorphism="implicit|explicit"
where="arbitrary sql where condition" (11)
persister="PersisterClass" (12)
batch-size="N" (13)
optimistic-lock="none|version|dirty|all" (14)
lazy="true|false" (15)
/>
name: 持久化類(或者介面)的Java全限定名。
table: 對應的資料庫表名。
discriminator-value(辨別值) (可選 - 預設和類名一樣):一個用於區分不同的子類的值,在多型行為時使用。
mutable(可變) (可選, 預設值為 true): 表明該類的例項可變(不可變)。
schema (可選): 覆蓋在根<hibernate-mapping>元素中指定的schema名字。
proxy (可選): 指定一個介面,在延遲裝載時作為代理使用。你可以在這裡使用該類自己的名字。
dynamic-update(動態更新) (可選,預設為false): 指定用於UPDATE 的SQL將會在執行時動態生成,並且只更新那些改變過的欄位。
dynamic-insert(動態插入) (可選, 預設為false): 指定用於INSERT的 SQL 將會在執行時動態生成,並且只包含那些非空值欄位。
select-before-update (可選,預設值為false): 指定Hibernate除非確定物件的確被修改了,不會執行SQL UPDATE操作。在特定場合(實際上,只會發生在一個臨時物件關聯到一個新的session中去,執行update()的時候),這說明Hibernate會在UPDATE之前執行一次額外的SQL SELECT操作,來決定是否應該進行UPDATE。
polymorphism(多形,多型) (可選, 預設值為 implicit (隱式)): 界定是隱式還是顯式的使用查詢多型。
(11) where (可選) 指定一個附加的SQLWHERE 條件,在抓取這個類的物件時會一直增加這個條件。
(12) persister (可選): 指定一個定製的ClassPersister。
(13) batch-size (可選,預設是1) 指定一個用於根據識別符號抓取例項時使用的"batch size"(批次抓取數量)。
(14) optimistic-lock(樂觀鎖定) (可選,預設是version): 決定樂觀鎖定的策略。
(15) lazy(延遲) (可選): 假若設定 lazy="true",就是設定這個類自己的名字作為proxy介面的一種等價快捷形式。
name="ClassName"
table="tableName"
discriminator-value="discriminator_value"
mutable="true|false"
schema="owner"
proxy="ProxyInterface"
dynamic-update="true|false"
dynamic-insert="true|false"
select-before-update="true|false"
polymorphism="implicit|explicit"
where="arbitrary sql where condition" (11)
persister="PersisterClass" (12)
batch-size="N" (13)
optimistic-lock="none|version|dirty|all" (14)
lazy="true|false" (15)
/>
name: 持久化類(或者介面)的Java全限定名。
table: 對應的資料庫表名。
discriminator-value(辨別值) (可選 - 預設和類名一樣):一個用於區分不同的子類的值,在多型行為時使用。
mutable(可變) (可選, 預設值為 true): 表明該類的例項可變(不可變)。
schema (可選): 覆蓋在根<hibernate-mapping>元素中指定的schema名字。
proxy (可選): 指定一個介面,在延遲裝載時作為代理使用。你可以在這裡使用該類自己的名字。
dynamic-update(動態更新) (可選,預設為false): 指定用於UPDATE 的SQL將會在執行時動態生成,並且只更新那些改變過的欄位。
dynamic-insert(動態插入) (可選, 預設為false): 指定用於INSERT的 SQL 將會在執行時動態生成,並且只包含那些非空值欄位。
select-before-update (可選,預設值為false): 指定Hibernate除非確定物件的確被修改了,不會執行SQL UPDATE操作。在特定場合(實際上,只會發生在一個臨時物件關聯到一個新的session中去,執行update()的時候),這說明Hibernate會在UPDATE之前執行一次額外的SQL SELECT操作,來決定是否應該進行UPDATE。
polymorphism(多形,多型) (可選, 預設值為 implicit (隱式)): 界定是隱式還是顯式的使用查詢多型。
(11) where (可選) 指定一個附加的SQLWHERE 條件,在抓取這個類的物件時會一直增加這個條件。
(12) persister (可選): 指定一個定製的ClassPersister。
(13) batch-size (可選,預設是1) 指定一個用於根據識別符號抓取例項時使用的"batch size"(批次抓取數量)。
(14) optimistic-lock(樂觀鎖定) (可選,預設是version): 決定樂觀鎖定的策略。
(15) lazy(延遲) (可選): 假若設定 lazy="true",就是設定這個類自己的名字作為proxy介面的一種等價快捷形式。