C3P0连接池适配HGDB

文章目录

文档用途

讲解常用的并且需要与数据库进行交互的开源框架C3P0,以及C3P0框架是如何适配HGDB的。

详细信息

1.C3P0概述

C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。

2.C3P0使用

Maven项目中c3p0依赖,pom.xm文件配置如下:

xml 复制代码
<dependency>

    <groupId>c3p0</groupId>

    <artifactId>c3p0</artifactId>

    <version>0.9.1.2</version>

</dependency>

<dependency>

    <groupId>com.mchange</groupId>

    <artifactId>c3p0</artifactId>

    <version>0.9.2.1</version>

</dependency>

<dependency>

    <groupId>highgo</groupId>

    <artifactId>highgo</artifactId>

    <version>5.0-42</version>

</dependency>

在以spring、mybatis、c3p0为框架搭建的项目案例中,spring配置文件中,c3p0部分连接参数示例,如下:

xml 复制代码
<bean id="dataSource"  

class="com.mchange.v2.c3p0.ComboPooledDataSource" >   

    <property name="jdbcUrl"   value="${jdbc.url}"/> 

    <property name="user"   value="${jdbc.username}"/>

    <property name="password"   value="${jdbc.password}"/> 

    <property name="driverClass"   value="${jdbc.driverClassName}"/> 

    <!-- 连接池中保留的最大连接数。默认值: 15 -->  

    <property name="maxPoolSize"   value="20"/> 

    <!-- 连接池中保留的最小连接数,默认为:3   -->

    <property name="minPoolSize"   value="2"/> 

    <!-- 初始化连接池中的连接数,取值应在minPoolSize与maxPoolSize之间,默认为3 --> 

    <property name="initialPoolSize"   value="2"/> 

    <!-- 最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。默认值: 0 -->  

    <property name="maxIdleTime"   value="60"/>

</bean>

C3P0详细参数请查询官网:https://www.mchange.com/projects/c3p0/

Java框架中的配置参数为了维护方便、便于阅读,一般把一些参数放在配置文件中;比如在此案例下,把HGDB的连接参数放在了jdbc.properties文件下,在spring配置文件中使用 j d b c . u r l , {jdbc.url}, jdbc.url,{jdbc.username}, j d b c . p a s s w o r d , {jdbc.password}, jdbc.password,{jdbc.driverClassName}来引用这些参数;在spring配置文件中还有个引入配置文件的配置,如下:

java 复制代码
<!-- 引入配置文件 -->

 <context:property-placeholder location="classpath:jdbc.properties"/>

这样spring就会按照配置寻找jdbc.properties中的jdbc.url,jdbc.username,jdbc.password,jdbc.driverClassName这四个参数;

jdbc.properties中的内容,如下:

java 复制代码
jdbc.url=jdbc:highgo://127.0.0.1:5866/myhgdb

jdbc.driverClassName=com.highgo.jdbc.Driver

jdbc.username=myuser

jdbc.password=my123

目前使用比较多的配置文件基本都是以 .xml、.properties、.yml等结尾,其中还有的在java类中设置参数值。

C3P0适配HGDB就是把c3p0的数据库连接参数改为HGDB的连接参数,如图6.2,只要把jdbc.url、jdbc.driverClassName、jdbc.username、jdbc.password修改为HGDB的连接参数即可。

相关推荐
瀚高PG实验室20 小时前
ETL中,分区表子表未及时收集统计信息,导致sql执行耗时很长
数据库·数据仓库·sql·etl·瀚高数据库
瀚高PG实验室3 天前
HGDB 4.5.8.8开启oracle兼容执行带聚合函数的SQL导致数据库进程被信号11杀死
数据库·sql·oracle·瀚高数据库
瀚高PG实验室7 天前
使用hgdbdeveloper开发工具导出数据后在异机恢复时报错
数据库·瀚高数据库
瀚高PG实验室14 天前
同架构大数据量HGDB到HGDB数据迁移
架构·瀚高数据库
瀚高PG实验室16 天前
数据库因坏块导致无法VACUUM FREEZE问题处理
数据库·瀚高数据库
瀚高PG实验室16 天前
nginx中配置数据库连接
运维·数据库·nginx·瀚高数据库
瀚高PG实验室17 天前
rpm包安装报错:cannot open Packages index using db5 - Cannot allocate memory (12)
linux·运维·服务器·瀚高数据库
瀚高PG实验室18 天前
易智瑞GeoScene Pro连接瀚高安全版数据库 458
数据库·安全·瀚高数据库
瀚高PG实验室23 天前
瀚高数据库使用IPv6连接的配置方法
数据库·瀚高数据库
瀚高PG实验室1 个月前
表空间迁移
数据库·瀚高数据库