配置文件
- 名稱必須為c3p0-config.xml,否則找不到;
- 標簽名稱
<c3p0-config>
<default-config >
具體配置內容
</default-config>
</c3p0-config>
一般按照上述配置即可,如果有多個數據庫可以使用標簽
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>