編程生活

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評論 :: 0 Trackbacks



          Hibernate配置屬性

           

          屬性名

          用途

          hibernate.dialect

          一個Hibernate Dialect類名允許Hibernate針對特定的關系數據庫生成優化的SQL. 取值 full.classname.of.Dialect

          hibernate.show_sql

          輸出所有SQL語句到控制臺. 有一個另外的選擇是把org.hibernate.SQL這個log category設為debug。 eg. true | false

          hibernate.format_sql

          在log和console中打印出更漂亮的SQL。 取值 true | false

          hibernate.default_schema

          在生成的SQL中, 將給定的schema/tablespace附加于非全限定名的表名上. 取值 SCHEMA_NAME

          hibernate.default_catalog

          在生成的SQL中, 將給定的catalog附加于非全限定名的表名上. 取值 CATALOG_NAME

          hibernate.session_factory_name

          SessionFactory創建后,將自動使用這個名字綁定到JNDI中. 取值 jndi/composite/name

          hibernate.max_fetch_depth

          為單向關聯(一對一, 多對一)的外連接抓取(outer join fetch)樹設置最大深度. 值為0意味著將關閉默認的外連接抓取. 取值 建議在03之間取值

          hibernate.default_batch_fetch_size

          為Hibernate關聯的批量抓取設置默認數量. 取值 建議的取值為4, 8, 16

          hibernate.default_entity_mode

          為由這個SessionFactory打開的所有Session指定默認的實體表現模式. 取值 dynamic-map, dom4j, pojo

          hibernate.order_updates

          強制Hibernate按照被更新數據的主鍵,為SQL更新排序。這么做將減少在高并發系統中事務的死鎖。 取值 true | false

          hibernate.generate_statistics

          如果開啟, Hibernate將收集有助于性能調節的統計數據. 取值 true | false

          hibernate.use_identifer_rollback

          如果開啟, 在對象被刪除時生成的標識屬性將被重設為默認值. 取值 true | false

          hibernate.use_sql_comments

          如果開啟, Hibernate將在SQL中生成有助于調試的注釋信息, 默認值為false. 取值 true | false                    



          Hibernate JDBC
          和連接屬性

           

          屬性名

          用途

          hibernate.jdbc.fetch_size

          非零值,指定JDBC抓取數量的大小 (調用Statement.setFetchSize()).

          hibernate.jdbc.batch_size

          非零值,允許Hibernate使用JDBC2的批量更新. 取值 建議取530之間的值

          hibernate.jdbc.batch_versioned_data

          如果你想讓你的JDBC驅動從executeBatch()返回正確的行計數 , 那么將此屬性設為true(開啟這個選項通常是安全的). 同時,Hibernate將為自動版本化的數據使用批量DML. 默認值為false. eg. true | false

          hibernate.jdbc.factory_class

          選擇一個自定義的Batcher. 多數應用程序不需要這個配置屬性. eg. classname.of.Batcher

          hibernate.jdbc.use_scrollable_resultset

          允許Hibernate使用JDBC2的可滾動結果集. 只有在使用用戶提供的JDBC連接時,這個選項才是必要的, 否則Hibernate會使用連接的元數據. 取值 true | false

          hibernate.jdbc.use_streams_for_binary

          在JDBC讀寫binary (二進制)serializable (可序列化)的類型時使用流(stream)(系統級屬性). 取值 true | false

          hibernate.jdbc.use_get_generated_keys

          在數據插入數據庫之后,允許使用JDBC3 PreparedStatement.getGeneratedKeys()來獲取數據庫生成的key(鍵)。需要JDBC3+驅動和JRE1.4+, 如果你的數據庫驅動在使用Hibernate的標 識生成器時遇到問題,請將此值設為false. 默認情況下將使用連接的元數據來判定驅動的能力. 取值 true|false

          hibernate.connection.provider_class

          自定義ConnectionProvider的類名, 此類用來向Hibernate提供JDBC連接. 取值 classname.of.ConnectionProvider

          hibernate.connection.isolation

          設置JDBC事務隔離級別. 查看java.sql.Connection來了解各個值的具體意義, 但請注意多數數據庫都不支持所有的隔離級別. 取值 1, 2, 4, 8

          hibernate.connection.autocommit

          允許被緩存的JDBC連接開啟自動提交(autocommit) (不建議). 取值 true | false

          hibernate.connection.release_mode

          指定Hibernate在何時釋放JDBC連接. 默認情況下,直到Session被顯式關閉或被斷開連接時,才會釋放JDBC連接. 對于應用程序服務器的JTA數據源, 你應當使用after_statement, 這樣在每次JDBC調用后,都會主動的釋放連接. 對于非JTA的連接, 使用after_transaction在每個事務結束時釋放連接是合理的. auto將為JTA和CMT事務策略選擇after_statement, 為JDBC事務策略選擇after_transaction. 取值 on_close | after_transaction | after_statement | auto

          hibernate.connection.

          將JDBC屬性propertyName傳遞到DriverManager.getConnection()中去.

          hibernate.jndi.

          將屬性propertyName傳遞到JNDI InitialContextFactory中去.



          Hibernate
          緩存屬性

           

          屬性名

          用途

          hibernate.cache.provider_class

          自定義的CacheProvider的類名. 取值 classname.of.CacheProvider

          hibernate.cache.use_minimal_puts

          以頻繁的讀操作為代價, 優化二級緩存來最小化寫操作. 在Hibernate3中,這個設置對的集群緩存非常有用, 對集群緩存的實現而言,默認是開啟的. 取值 true|false

          hibernate.cache.use_query_cache

          允許查詢緩存, 個別查詢仍然需要被設置為可緩存的. 取值 true|false

          hibernate.cache.use_second_level_cache

          能用來完全禁止使用二級緩存. 對那些在類的映射定義中指定的類,會默認開啟二級緩存. 取值 true|false

          hibernate.cache.query_cache_factory

          自定義實現QueryCache接口的類名, 默認為內建的StandardQueryCache. 取值 classname.of.QueryCache

          hibernate.cache.region_prefix

          二級緩存區域名的前綴. 取值 prefix

          hibernate.cache.use_structured_entries

          強制Hibernate以更人性化的格式將數據存入二級緩存. 取值 true|false


          Hibernate事務屬性

           

          屬性名

          用途

          hibernate.transaction.factory_class

          一個TransactionFactory的類名, 用于Hibernate Transaction API (默認為JDBCTransactionFactory). 取值 classname.of.TransactionFactory

          jta.UserTransaction

          一個JNDI名字,被JTATransactionFactory用來從應用服務器獲取JTA UserTransaction. 取值 jndi/composite/name

          hibernate.transaction.manager_lookup_class

          一個TransactionManagerLookup的類名 - 當使用JVM級緩存,或在JTA環境中使用hilo生成器的時候需要該類. 取值 classname.of.TransactionManagerLookup

          hibernate.transaction.flush_before_completion

          如果開啟, session在事務完成后將被自動清洗(flush)。 現在更好的方法是使用自動session上下文管理。取值 true | false

          hibernate.transaction.auto_close_session

          如果開啟, session在事務完成后將被自動關閉。 現在更好的方法是使用自動session上下文管理。取值 true | false

          HIBERNET其它屬性
           

          屬性名

          用途

          hibernate.current_session_context_class

          為"當前" Session指定一個(自定義的)策略。eg. jta | thread | custom.Class

          hibernate.query.factory_class

          選擇HQL解析器的實現. 取值 org.hibernate.hql.ast.ASTQueryTranslatorFactory or org.hibernate.hql.classic.ClassicQueryTranslatorFactory

          hibernate.query.substitutions

          將Hibernate查詢中的符號映射到SQL查詢中的符號 (符號可能是函數名或常量名字). 取值 hqlLiteral=SQL_LITERAL, hqlFunction=SQLFUNC

          hibernate.hbm2ddl.auto

          SessionFactory創建時,自動檢查數據庫結構,或者將數據庫schema的DDL導出到數據庫. 使用 create-drop時,在顯式關閉SessionFactory時,將drop掉數據庫schema. 取值 validate | update | create | create-drop

          hibernate.cglib.use_reflection_optimizer

          開啟CGLIB來替代運行時反射機制(系統級屬性). 反射機制有時在除錯時比較有用. 注意即使關閉這個優化, Hibernate還是需要CGLIB. 你不能在hibernate.cfg.xml中設置此屬性. 取值 true | false

          Hibernate SQL方言 (hibernate.dialect)

           

          RDBMS

          方言

          DB2

          org.hibernate.dialect.DB2Dialect

          DB2 AS/400

          org.hibernate.dialect.DB2400Dialect

          DB2 OS390

          org.hibernate.dialect.DB2390Dialect

          PostgreSQL

          org.hibernate.dialect.PostgreSQLDialect

          MySQL

          org.hibernate.dialect.MySQLDialect

          MySQL with InnoDB

          org.hibernate.dialect.MySQLInnoDBDialect

          MySQL with MyISAM

          org.hibernate.dialect.MySQLMyISAMDialect

          Oracle (any version)

          org.hibernate.dialect.OracleDialect

          Oracle 9i/10g

          org.hibernate.dialect.Oracle9Dialect

          Sybase

          org.hibernate.dialect.SybaseDialect

          Sybase Anywhere

          org.hibernate.dialect.SybaseAnywhereDialect

          Microsoft SQL Server

          org.hibernate.dialect.SQLServerDialect

          SAP DB

          org.hibernate.dialect.SAPDBDialect

          Informix

          org.hibernate.dialect.InformixDialect

          HypersonicSQL

          org.hibernate.dialect.HSQLDialect

          Ingres

          org.hibernate.dialect.IngresDialect

          Progress

          org.hibernate.dialect.ProgressDialect

          Mckoi SQL

          org.hibernate.dialect.MckoiDialect

          Interbase

          org.hibernate.dialect.InterbaseDialect

          Pointbase

          org.hibernate.dialect.PointbaseDialect

          FrontBase

          org.hibernate.dialect.FrontbaseDialect

          Firebird

          org.hibernate.dialect.FirebirdDialect

              Hibernate日志類別 

           

          類別

          功能

          org.hibernate.SQL

          在所有SQL DML語句被執行時為它們記錄日志

          org.hibernate.type

          為所有JDBC參數記錄日志

          org.hibernate.tool.hbm2ddl

          在所有SQL DDL語句執行時為它們記錄日志

          org.hibernate.pretty

          在session清洗(flush)時,為所有與其關聯的實體(最多20個)的狀態記錄日志

          org.hibernate.cache

          為所有二級緩存的活動記錄日志

          org.hibernate.transaction

          為事務相關的活動記錄日志

          org.hibernate.jdbc

          為所有JDBC資源的獲取記錄日志

          org.hibernate.hql.AST

          在解析查詢的時候,記錄HQL和SQL的AST分析日志

          org.hibernate.secure

          為JAAS認證請求做日志

          org.hibernate

          為任何Hibernate相關信息做日志 (信息量較大, 但對查錯非常有幫助)         

          JTA TransactionManagers
           

          Transaction工廠類

          應用程序服務器

          org.hibernate.transaction.JBossTransactionManagerLookup

          JBoss

          org.hibernate.transaction.WeblogicTransactionManagerLookup

          Weblogic

          org.hibernate.transaction.WebSphereTransactionManagerLookup

          WebSphere

          org.hibernate.transaction.WebSphereExtendedJTATransactionLookup

          WebSphere 6

          org.hibernate.transaction.OrionTransactionManagerLookup

          Orion

          org.hibernate.transaction.ResinTransactionManagerLookup

          Resin

          org.hibernate.transaction.JOTMTransactionManagerLookup

          JOTM

          org.hibernate.transaction.JOnASTransactionManagerLookup

          JOnAS

          org.hibernate.transaction.JRun4TransactionManagerLookup

          JRun4

          org.hibernate.transaction.BESTransactionManagerLookup

          Borland ES

          posted on 2007-11-27 22:16 wilesun 閱讀(877) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 梁山县| 景宁| 成武县| 西畴县| 金湖县| 香格里拉县| 美姑县| 玉龙| 东宁县| 本溪市| 密山市| 财经| 贵州省| 平原县| 新乡市| 乌海市| 南木林县| 潜江市| 兴城市| 武鸣县| 鹤岗市| 临沂市| 玛曲县| 石楼县| 衡东县| 会东县| 台北县| 肥乡县| 新昌县| 云梦县| 杂多县| 阿坝| 平阳县| 华安县| 富阳市| 绥棱县| 秦皇岛市| 灵丘县| 东乡族自治县| 克东县| 门头沟区|