2017-03-29 5 views
1

연결 관리를 위해 c3p0과 함께 최대 절전 모드를 사용하고 있습니다. 최대 절전 모드 구성에서는 connection.pool_size와 hibernate.c3p0.max_size가 서로 다른 숫자로 구성되어 있습니다.c3p0이 구성된 경우 connection.pool_size가 무시됩니다.

내 지식에 따라 c3p0을 사용할 때 내 기본 최대 절전 모드 연결 관리가 사용되지 않습니다. 하지만 hibernate.c3p0.max_size가 기본 최대 절전 모드 풀 크기 설정 변수 인 connection.pool_size의 c3p0 대체인지 ​​여부는 확실하지 않습니다.

그래서 내 쿼리 - 구성에서 connection.pool_size를 제거 할 수 있습니까? 둘 다 설정 파일에있는 경우 connection.pool_size가 완전히 무시되거나 다른 용도로 사용됩니까?

답변

1

세션 팩토리를 사용하여 c3po에 대한 구성을 정의한 경우. 최대 절전 모드 기본 설정 필요 없음. 혼란을 피하기 위해 제거해야합니다. 당신이 이해하기 명확한 구성 설정을 해당 connection.pool_size를 제거

<?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:ABCXYZ</property> 
    <property name="hibernate.connection.username">myuser</property> 
    <property name="hibernate.connection.password">password</property> 
    <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property> 
    <property name="hibernate.default_schema">SCHEMA_A</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> 

    <mapping class="com.ABCXYZ.user.DBUser"></mapping> 
</session-factory> 
</hibernate-configuration> 

더 나은 : 같은

세션 공장 구성을 보인다.