c3p0配置文件


配置文件

  • 名稱必須為c3p0-config.xml,否則找不到;
  • 標簽名稱
<c3p0-config>
    <default-config >
        具體配置內容
    </default-config>
</c3p0-config>

一般按照上述配置即可,如果有多個數據庫可以使用標簽 ,在創建ComboPooledDataSource對象時,把config名稱"xxx"傳遞給構造函數即可。

sqlite配置參考

<named-config name = "sqlite" >
    <property name="jdbcUrl">jdbc:sqlite:db_save_path</property>
    <property name="driverClass">org.sqlite.JDBC</property>

    <property name="checkoutTimeout">30000</property>
    <property name="idleConnectionTestPeriod">30</property>
    <property name="initialPoolSize">10</property>
    <property name="maxIdleTime">30</property>
    <property name="maxPoolSize">10</property>
    <property name="maxStatements">200</property>
</named-config>

sqlite memory mode

上面的配置會把數據庫文件保存到db_save_path,如果數據量比較小,也不需要持久化到硬盤上,可以使用sqlite的內存數據庫模式,

<property name="jdbcUrl">jdbc:sqlite::memory:</property>

其中memory名稱不能改變。

此時,數據庫在當前數據庫連接被關閉后就立刻消失。每個:memory:數據庫是不同的數據庫,也就是說,用文件名":memory:"打開兩個數據庫連接將創建兩個獨立的內在數據庫。
如果通過未修飾的":memory"名來指定內存數據庫,則這個數據庫總是有一個私有的對其他連接不可見的緩存。如果使用URI文件名,則同樣的內存數據庫可以被兩個或多個數據庫連接打開。
引用自SQLite剖析(6):臨時文件和內存數據庫

mysql配置參考

<named-config name = "mysql" >
    <property name="jdbcUrl">jdbc:mysql://ipAddr:Port/dbName</property>
    <property name="driverClass">com.mysql.jdbc.Driver</property>
    <property name="user">username</property>
    <property name="password">password</property>

    <property name="checkoutTimeout">30000</property>
    <property name="idleConnectionTestPeriod">30</property>
    <property name="initialPoolSize">10</property>
    <property name="maxIdleTime">30</property>
    <property name="maxPoolSize">100</property>
    <property name="minPoolSize">10</property>
    <property name="maxStatements">200</property>
</named-config>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM