hibernate3配置文件hibernate.cfg.xml的详细解释
<!--標(biāo)準(zhǔn)的XML文件的起始行,version='1.0'表明XML的版本,encoding='gb2312'表明XML文件的編碼方式-->?
? ? ? ? ? ? ? ? <?xml version='1.0' encoding='gb2312'?>?
<!--表明解析本XML文件的DTD文檔位置,DTD是Document Type Definition 的縮寫,即文檔類型的定義,XML解析器使用DTD文檔來(lái)檢查XML文件的合法性。hibernate.sourceforge.net/hibernate-configuration-3.0dtd可以在Hibernate3.1.3軟件包中的src\org\hibernate目錄中找到此文件-->?
<!DOCTYPE hibernate-configuration PUBLIC?
? ? ? ? ? "-//Hibernate/Hibernate Configuration DTD 3.0//EN"?
? ? ? ? ? "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">?
? ? <!--聲明Hibernate配置文件的開(kāi)始-->? ? ??
? ? <hibernate-configuration>?
? ? <!--表明以下的配置是針對(duì)session-factory配置的,SessionFactory是Hibernate中的一個(gè)類,這個(gè)類主要負(fù)責(zé)保存HIbernate的配置信息,以及對(duì)Session的操作-->?
? ? ? <session-factory>? ??
? ? ? <!--配置數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序,Hibernate在連接數(shù)據(jù)庫(kù)時(shí),需要用到數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序-->?
? ? ? ? ? <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver </property>?
? ? ? <!--設(shè)置數(shù)據(jù)庫(kù)的連接url:jdbc:mysql://localhost/hibernate,其中l(wèi)ocalhost表示mysql服務(wù)器名稱,此處為本機(jī),? ? hibernate是數(shù)據(jù)庫(kù)名-->??
? ? ? ? ? ? <property name="hibernate.connection.url">jdbc:mysql://localhost/hibernate </hibernate>?
? ? <!--連接數(shù)據(jù)庫(kù)是用戶名-->?
? ? ? ? ? <property name="hibernate.connection.username">root </property>?
? ? ? ? ? <!--連接數(shù)據(jù)庫(kù)是密碼-->?
? ? ? ? ? <property name="hibernate.connection.password">123456 </property>? ? ? ??
? ? ? ? ? <!--數(shù)據(jù)庫(kù)連接池的大小-->?
? ? ? ? ? <property name="hibernate.connection.pool.size">20 </property>? ? ? ??
? ? ? ? <!--是否在后臺(tái)顯示Hibernate用到的SQL語(yǔ)句,開(kāi)發(fā)時(shí)設(shè)置為true,便于差錯(cuò),程序運(yùn)行時(shí)可以在Eclipse的控制臺(tái)顯示Hibernate的執(zhí)行Sql語(yǔ)句。項(xiàng)目部署后可以設(shè)置為false,提高運(yùn)行效率-->?
? ? ? ? <property name="hibernate.show_sql">true </property>?
? ? ? ? <!--jdbc.fetch_size是指Hibernate每次從數(shù)據(jù)庫(kù)中取出并放到JDBC的Statement中的記錄條數(shù)。Fetch Size設(shè)的越大,讀數(shù)據(jù)庫(kù)的次數(shù)越少,速度越快,Fetch Size越小,讀數(shù)據(jù)庫(kù)的次數(shù)越多,速度越慢-->?
? ? ? ? <property name="jdbc.fetch_size">50 </property>?
? ? ? ? <!--jdbc.batch_size是指Hibernate批量插入,刪除和更新時(shí)每次操作的記錄數(shù)。Batch Size越大,批量操作的向數(shù)據(jù)庫(kù)發(fā)送Sql的次數(shù)越少,速度就越快,同樣耗用內(nèi)存就越大-->?
? ? ? ? <property name="jdbc.batch_size">23 </property>?
? ? ? ? <!--jdbc.use_scrollable_resultset是否允許Hibernate用JDBC的可滾動(dòng)的結(jié)果集。對(duì)分頁(yè)的結(jié)果集。對(duì)分頁(yè)時(shí)的設(shè)置非常有幫助-->?
? ? ? ? <property name="jdbc.use_scrollable_resultset">false </property>?
? ? ? ? <!--connection.useUnicode連接數(shù)據(jù)庫(kù)時(shí)是否使用Unicode編碼-->?
? ? ? ? <property name="Connection.useUnicode">true </property>?
? ? ? ? <!--connection.characterEncoding連接數(shù)據(jù)庫(kù)時(shí)數(shù)據(jù)的傳輸字符集編碼方式,最好設(shè)置為gbk,用gb2312有的字符不全-->?
? ? <property name="connection.characterEncoding">gbk </property>? ? ??
? ? ? ??
? ? ? ? <!--hibernate.dialect 只是Hibernate使用的數(shù)據(jù)庫(kù)方言,就是要用Hibernate連接那種類型的數(shù)據(jù)庫(kù)服務(wù)器。-->?
? ? ? ? ? <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect </property>?
? ? ? ? <!--指定映射文件為“hibernate/ch1/UserInfo.hbm.xml”-->? ? ? ??
? ? ? ? ? <mapping resource="org/mxg/UserInfo.hbm.xml">?
? </session-factory>?
? </hibernate-configuration>? ??
??
??
??
? <bean id="dataSource"??
? class="org.apache.commons.dbcp.BasicDataSource"??
? destroy-method="close">??
//連接驅(qū)動(dòng)? ??
? <property name="driverClassName" value="${jdbc.driverClassName}" />??
//連接url,? ??
<property name="url" value="${jdbc.url}" />??
//連接用戶名? ??
? <property name="username" value="${jdbc.username}" />??
//連接密碼? ??
? <property name="password" value="${jdbc.password}" />??
</bean>??
??
<bean id="hbSessionFactory"??
? class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">??
? <property name="dataSource" ref="dataSource" />??
? <property name="configLocation">??
//hibernate配置文件位置? ??
? <value>WEB-INF/hibernate.cfg.xml </value>??
? </property>??
? <property name="configurationClass"??
? value="org.hibernate.cfg.AnnotationConfiguration" />??
? <property name="hibernateProperties">??
? <props>??
? //針對(duì)oracle數(shù)據(jù)庫(kù)的方言,特定的關(guān)系數(shù)據(jù)庫(kù)生成優(yōu)化的SQL? ??
? ? <prop key="hibernate.dialect">??
? ? org.hibernate.dialect.OracleDialect? ??
? ? </prop>??
? //選擇HQL解析器的實(shí)現(xiàn)? ??
? ? <prop key="hibernate.query.factory_class">??
? ? org.hibernate.hql.ast.ASTQueryTranslatorFactory? ??
? ? </prop>??
? ? //是否在控制臺(tái)打印sql語(yǔ)句? ??
? ? <prop key="hibernate.show_sql">true </prop>??
? ? //在Hibernate系統(tǒng)參數(shù)中hibernate.use_outer_join被打開(kāi)的情況下,該參數(shù)用來(lái)允許使用outer join來(lái)載入此集合的數(shù)據(jù)。? ??
? ? <prop key="hibernate.use_outer_join">true </prop>??
? //默認(rèn)打開(kāi),啟用cglib反射優(yōu)化。cglib是用來(lái)在Hibernate中動(dòng)態(tài)生成PO字節(jié)碼的,打開(kāi)優(yōu)化可以加快字節(jié)碼構(gòu)造的速度? ??
? <prop key="hibernate.cglib.use_reflection_optimizer">true </prop>??
? //輸出格式化后的sql,更方便查看? ??
? <prop key="hibernate.format_sql">true </prop>??
? //“useUnicode”和“characterEncoding”決定了它是否在客戶端和服務(wù)器端傳輸過(guò)程中進(jìn)行Encode,以及如何進(jìn)行Encode? ??
? <prop key="hibernate.connection.useUnicode">true </prop>??
? //允許查詢緩存, 個(gè)別查詢?nèi)匀恍枰辉O(shè)置為可緩存的.? ??
? <prop key="hibernate.cache.use_query_cache">false </prop>??
? <prop key="hibernate.default_batch_fetch_size">16 </prop>??
? ? //連接池的最大活動(dòng)個(gè)數(shù)? ??
? ? <prop key="hibernate.dbcp.maxActive">100 </prop>??
? //當(dāng)連接池中的連接已經(jīng)被耗盡的時(shí)候,DBCP將怎樣處理(0 = 失敗,1 = 等待,2? =? 增長(zhǎng))? ??
? ? <prop key="hibernate.dbcp.whenExhaustedAction">1 </prop>??
? ? //最大等待時(shí)間? ??
? ? <prop key="hibernate.dbcp.maxWait">1200 </prop>??
? ? //沒(méi)有人用連接的時(shí)候,最大閑置的連接個(gè)數(shù)? ??
? ? <prop key="hibernate.dbcp.maxIdle">10 </prop>??
? ? ##以下是對(duì)prepared statement的處理,同上。? ??
? ? <prop key="hibernate.dbcp.ps.maxActive">100 </prop>??
? ? <prop key="hibernate.dbcp.ps.whenExhaustedAction">1 </prop>??
? ? <prop key="hibernate.dbcp.ps.maxWait">1200 </prop>??
? ? <prop key="hibernate.dbcp.ps.maxIdle">10 </prop>??
? </props>??
? </property>??
</bean>
轉(zhuǎn)載于:https://www.cnblogs.com/javaleon/p/3969238.html
總結(jié)
以上是生活随笔為你收集整理的hibernate3配置文件hibernate.cfg.xml的详细解释的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: jquery 实现智能炫酷的翻页相册效果
- 下一篇: FlashFXP使用教程