天天看點

JDBC連接配接屬性

Hibernate需要進行資料庫通路,是以必須設定連接配接資料庫的相關屬性。所有Hibernate屬性的名字和語義都在org.hibernate.cfg.Environment中定義。

下面是關于JDBC連接配接配置中最重要的設定。

Ø  hibernate.connection.driver_class:設定連接配接資料庫的驅動。

Ø  hibernate.connection.url:設定所需連接配接資料庫服務的URL。

Ø  hibernate.connection.username:連接配接資料庫的使用者名。

Ø  hibernate.connection.password:連接配接資料庫的密碼。

Ø  hibernate.connection.pool_size:設定Hibernate資料庫連接配接池的最大并發連接配接數。

Ø  hibernate.dialect:設定連接配接資料庫所使用的方言。

如果在hibernate.cfg.xml或hibernate.properties檔案中設定如上屬性,Hibernate将可以處理底層資料庫連接配接細節。

上面配置了Hibernate資料庫連接配接池的最大并發連接配接數,但Hibernate自帶的連接配接池僅有測試價值,并不推薦在實際項目中使用。實際項目中可以使用C3P0或Proxool連接配接池,為了使用C3P0或Proxool連接配接池,隻需要用這些連接配接池配置代替hibernate.connection.pool_size配置屬性即可。

下面是配置C3P0連接配接池的配置片段。

<!-- 設定連接配接資料庫的驅動。-->  

<property name="connection.driver_class">com.mysql.jdbc.Driver</property>  

<!--設定所需連接配接資料庫服務的URL。-->  

<property name="connection.url">jdbc:mysql://localhost/hibernate</property>  

<!--連接配接資料庫的使用者名。-->  

<property name="connection.username">root</property>  

<property name="connection.password">32147</property>  

<!-- C3P0連接配接池的最大連接配接數-->  

<property name="hibernate.c3p0.max_size">20</property>  

<!-- C3P0連接配接池的最小連接配接數-->  

<property name="hibernate.c3p0.min_size">1</property>  

<!-- C3P0連接配接池中連接配接的逾時時長 -->  

<property name="hibernate.c3p0.timeout">1800</property>  

<!-- C3P0緩存Statement的數量 -->  

<property name="hibernate.c3p0.max_statements">50</property>