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>
posted @ 2017-02-25 20:17  崔咩咩  阅读(5462)  评论(0编辑  收藏  举报