首页 > 代码库 > c3p0写连接池 Demo
c3p0写连接池 Demo
1、导包
2、配置文件:名称必须为:c3p0-config.xml,且必须放在src根目录下
1 <c3p0-config> 2 <!-- 默认配置,有且仅可出现一次 ,如果没有指定则使用这个配置 --> 3 <default-config> 4 <!-- 连接超时时间 30秒 --> 5 <property name="checkoutTimeout">30000</property> 6 <!-- 每30秒检查一次空闲时间 --> 7 <property name="idleConnectionTestPeriod">30</property> 8 <!-- 初始化池大小 --> 9 <property name="initialPoolSize">10</property>10 <!-- 最多的connection的空闲时间 -->11 <property name="maxIdleTime">30</property>12 <!-- 池中最大连接数 -->13 <property name="maxPoolSize">100</property>14 <!-- 池中最小连接数 -->15 <property name="minPoolSize">10</property>16 <!-- 批处理的语句 -->17 <property name="maxStatements">50</property>18 <!-- 每次增长几个连接 -->19 <property name="acquireIncrement">3</property> 20 21 <property name="driverClass">com.mysql.jdbc.Driver</property>22 <property name="jdbcUrl">23 <![CDATA[jdbc:mysql:///jdbcdb?useUnicode=true&characterEncoding=UTF-8]]>24 </property>25 <property name="user">root</property>26 <property name="password">mysql</property> 27 28 </default-config> 29 <!-- 命名的配置 -->30 <named-config name="MyDb">31 <property name="driverClass">com.mysql.jdbc.Driver</property>32 <property name="jdbcUrl">33 <![CDATA[jdbc:mysql://localhost/bookstore]]>34 </property>35 <property name="user">root</property>36 <property name="password">mysql</property>37 <property name="acquireIncrement">5</property><!-- 如果池中数据连接不够时一次增长多少个 -->38 <property name="initialPoolSize">100</property>39 <property name="minPoolSize">50</property>40 <property name="maxPoolSize">1000</property>41 <property name="maxStatements">0</property>42 <property name="maxStatementsPerConnection">5</property> <!-- he‘s important, but there‘s only one of him -->43 </named-config>44 </c3p0-config> 45 46 c3p0-config.xml
其中named-config不是必须的,是根据需要进行配置,可以配置oracle等数据库,在后面会说明,可能用到,也可能用不到。
3、获取DataSource工厂类
1 private static DataSource ds; 2 private DataSourceUtils(){} 3 static{ 4 ds=new ComboPooledDataSource();//默认读取c3p0中默认配置 5 //new ComboPooledDataSource("MyDb");//读取c3p0配置在的named-config中的配置 6 } 7 8 public static DataSource getDataSource() 9 {10 return ds;11 }
这里的ComboPooledDataSource("MyDb");就是读取named—config中的配置,而不是去读取默认的配置创建数据源
c3p0写连接池 Demo
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。