2014-10-10 42 views
0

我爲我的應用程序使用JBOSS 7.1 Web服務器。我配置了JBOSS連接池並將其用於JDBC連接。我也在我的應用程序中使用休眠。我想知道如果hibernate也使用這個連接池,或者我需要配置其他連接池(例如c3p0)進行休眠?Hibernate是否也使用連接池作爲JDBC?

+0

如果使用JNDI來配置Hibernate的是,然後它會使用JBoss的連接池。 – Neeraj 2014-10-10 11:35:10

回答

0

的hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE hibernate-configuration PUBLIC 
"-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> 
<hibernate-configuration> 
<session-factory> 
    <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property> 
    <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:schema</property> 
    <property name="hibernate.connection.username">user</property> 
    <property name="hibernate.connection.password">password</property> 
    <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property> 
    <property name="hibernate.default_schema">schema</property> 
    <property name="show_sql">true</property> 

    <property name="hibernate.c3p0.min_size">5</property> 
    <property name="hibernate.c3p0.max_size">20</property> 
    <property name="hibernate.c3p0.timeout">300</property> 
    <property name="hibernate.c3p0.max_statements">50</property> 
    <property name="hibernate.c3p0.idle_test_period">3000</property> 

hibernate.c3p0.min_size – Minimum number of JDBC connections in the pool. Hibernate default: 1 
hibernate.c3p0.max_size – Maximum number of JDBC connections in the pool. Hibernate default: 100 
hibernate.c3p0.timeout – When an idle connection is removed from the pool (in second). Hibernate default: 0, never expire. 
hibernate.c3p0.max_statements – Number of prepared statements will be cached. Increase performance. Hibernate default: 0 , caching is disable. 
hibernate.c3p0.idle_test_period – idle time in seconds before a connection is automatically validated. Hibernate default: 0 

更詳細地參閱link

1

C3P0連接池

<property name="hibernate.c3p0.min_size">5</property> 
    <property name="hibernate.c3p0.max_size">20</property> 
    <property name="hibernate.c3p0.timeout">300</property> 
    <property name="hibernate.c3p0.max_statements">50</property> 
    <property name="hibernate.c3p0.idle_test_period">3000</property> 

hibernate.c3p0.min_size - 池中JDBC連接的最小數量。休眠默認值:1 hibernate.c3p0.max_size - 池中JDBC連接的最大數量。休眠默認值:100 hibernate.c3p0.timeout - 從池中刪除空閒連接(以秒爲單位)。休眠默認值:0,永不過期。 hibernate.c3p0.max_statements - 準備好的語句的數量將被緩存。提高性能。休眠默認:0,緩存被禁用。 hibernate.c3p0.idle_test_period - 連接自動驗證前的空閒時間(以秒爲單位)。 Hibernate的默認值:0

http://docs.jboss.org/hibernate/orm/4.2/devguide/en-US/html/ch01.html