C3P0连接池配置 数据源

开发者福利!热门AI工具限免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

C3P0连接池配置

<c3p0-config> 
<default-config> 
<!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 --> 
<property name="acquireIncrement">3</property> 

<!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 --> 
<property name="acquireRetryAttempts">30</property> 

<!--两次连接中间隔时间,单位毫秒。Default: 1000 --> 
<property name="acquireRetryDelay">1000</property> 

<!--连接关闭时默认将所有未提交的操作回滚。Default: false --> 
<property name="autoCommitOnClose">false</property> 

<!--c3p0将建一张名为Test的空表,并使用其自带的查询语句进行测试。如果定义了这个参数那么 
属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操作,它将只供c3p0测试 
使用。Default: null--> 
<property name="automaticTestTable">Test</property> 

<!--获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效 
保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试 
获取连接失败后该数据源将申明已断开并永久关闭。Default: false--> 
<property name="breakAfterAcquireFailure">false</property> 

<!--当连接池用完时客户端调用getConnection()后等待获取新连接的时间,超时后将抛出 
SQLException,如设为0则无限期等待。单位毫秒。Default: 0 --> 
<property name="checkoutTimeout">100</property> 

<!--通过实现ConnectionTester或QueryConnectionTester的类来测试连接。类名需制定全路径。 
Default: com.mchange.v2.c3p0.impl.DefaultConnectionTester--> 
<property name="connectionTesterClassName"></property> 

<!--指定c3p0 libraries的路径,如果(通常都是这样)在本地即可获得那么无需设置,默认null即可 
Default: null--> 
<property name="factoryClassLocation">null</property> 

<!--Strongly disrecommended. Setting this to true may lead to subtle and bizarre bugs. 
(文档原文)作者强烈建议不使用的一个属性--> 
<property name="forceIgnoreUnresolvedTransactions">false</property> 

<!--每60秒检查所有连接池中的空闲连接。Default: 0 --> 
<property name="idleConnectionTestPeriod">60</property> 

<!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 --> 
<property name="initialPoolSize">3</property> 

<!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --> 
<property name="maxIdleTime">60</property> 

<!--连接池中保留的最大连接数。Default: 15 --> 
<property name="maxPoolSize">15</property> 

<!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements 
属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。 
如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0--> 
<property name="maxStatements">100</property> 

<!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 --> 
<property name="maxStatementsPerConnection"></property> 

<!--c3p0是异步操作的,缓慢的JDBC操作通过帮助进程完成。扩展这些操作可以有效的提升性能 
通过多线程实现多个操作同时被执行。Default: 3--> 
<property name="numHelperThreads">3</property> 

<!--当用户调用getConnection()时使root用户成为去获取连接的用户。主要用于连接池连接非c3p0 
的数据源时。Default: null--> 
<property name="overrideDefaultUser">root</property> 

<!--与overrideDefaultUser参数对应使用的一个参数。Default: null--> 
<property name="overrideDefaultPassword">password</property> 

<!--密码。Default: null--> 
<property name="password"></property> 

<!--定义所有连接测试都执行的测试语句。在使用连接测试的情况下这个一显著提高测试速度。注意: 
测试的表必须在初始数据源的时候就存在。Default: null--> 
<property name="preferredTestQuery">select id from test where id=1</property> 

<!--用户修改系统配置参数执行前最多等待300秒。Default: 300 --> 
<property name="propertyCycle">300</property> 

<!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的 
时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable 
等方法来提升连接测试的性能。Default: false --> 
<property name="testConnectionOnCheckout">false</property> 

<!--如果设为true那么在取得连接的同时将校验连接的有效性。Default: false --> 
<property name="testConnectionOnCheckin">true</property> 

<!--用户名。Default: null--> 
<property name="user">root</property>
</c3p0-config>


 



在Hibernate(spring管理)中的配置:

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
	<property name="driverClass"><value>oracle.jdbc.driver.OracleDriver</value></property>
	<property name="jdbcUrl"><value>jdbc:oracle:thin:@localhost:1521:Test</value></property>
	<property name="user"><value>Kay</value></property>
	<property name="password"><value>root</value></property>
	
	<!--连接池中保留的最小连接数。-->            
    <property name="minPoolSize" value="10" />        
    <!--连接池中保留的最大连接数。Default: 15 -->         
    <property name="maxPoolSize" value="100" />        
    <!--最大空闲时间,1800秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->               
    <property name="maxIdleTime" value="1800" />        
    <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->               
    <property name="acquireIncrement" value="3" />         
    <property name="maxStatements" value="1000" />          
    <property name="initialPoolSize" value="10" />          
    <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->       
    <property name="idleConnectionTestPeriod" value="60" />          
    <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->       
    <property name="acquireRetryAttempts" value="30" />          
    <property name="breakAfterAcquireFailure" value="true" />              
    <property name="testConnectionOnCheckout" value="false" /> 
 </bean>


 

.

英飞凌AURIX 2G 系列MCU关于外设模块EVADC的实现原理及对应MCAL(EB Tresos)配置项详细讲解 本文章讲述了英飞凌AURIX 2G系列MCU关于外设模块EVADC的实现原理及对应MCAL配置工具(EB)的配置项。 阅读详情

相关推荐

海康威视国内版监控设备改英文界面难题:原因解析与解决方案

跨境安防设备部署中,国内采购的海康威视监控设备常因仅支持中文界面导致海外用户无法操作。本文剖析了该问题的核心原因:海康威视对国内版和海外版设备实行区域锁定策略,国内版固件仅内置中文且无法通过常规方式切换语言。针对此问题,文章提供了三种解决方案:1)官方合规的海外版固件更换;2)低成本的操作界面翻译与远程协助;3)长期更换海外版设备的彻底解决方案。同给出了跨境采购的注意事项,强调应提前确认设备版本、拒绝非官方改造并预留适配间。

海康威视技术支持 3739

C3P0连接池的基本配置与使用

上一期我写了一篇Druid连接池的基本配置与使用,今天我要介绍一下C3P0连接池的基本使用。因为是介绍基本使用,所以我打算用一个非常简单的java应用来教大家如何对C3P0连接池进行基本配和使用。所以你只要有jdbc和Java基础就能看懂这篇文章,并学会如何使用。 一.C3P0连接池简介 C3P0连接池也是一款开源的连接池,它与阿里巴巴的Druid的使用方法都差多。同之处在于Driud连接池的数据库配置是写在druid-config.properties的属性配置文件中,而C3P0连接池把数据库配置

weixin_50216991的博客 6614

S7-1200PLC期末复习题(第七章)

A.0 B.1 C.4 D.-4 A、CV = 0 B、CV = 1 C、CV < 4 D、CV >= 4A、0,0 B、3,0 C、1,1 D、3,1 A、0 B、1 C、先是1,再变为0 D、先是0,再变为1置位输出:常开触点M0.0闭合,Q0.0变为1状态并保存该状态,即使M0.0断开,Q0.0也保持1状态。 复位输出:常开触点M0.1闭合,Q0.0变为0状态并保持该状态,即使M0.1断开,Q0.0也保持为0状态。 A、1 B、0 C、5 D、10RESET_BF指令需要两个参数,第一个是复位的位数

qq_52251819的博客 4359

C3P0数据库连接池配置

输出下面语句表示成功!其中红色的是报错,而是日志。

m0_74162514的博客 1214

【Java 进阶篇】JDBC 数据库连接池 C3P0 详解

在了解 C3P0 数据库连接池之前,让我们先明确什么是数据库连接池。数据库连接池是一个维护数据库连接的池子,它预先创建一定数量的数据库连接,并将这些连接保存在池中,以便应用程序在需要可以从池中获取连接,而是每次都创建新的连接。数据库连接是一种昂贵的资源,创建和销毁连接的开销很大。通过使用连接池,可以避免频繁地创建和销毁连接,提高了数据库访问的性能和效率。连接池还可以控制连接的数量,防止连接数过多导致数据库性能下降,同还可以管理连接的状态、超和异常处理。

繁依Fanyi的博客 8690

C3P0(数据库连接池)详解

是一个开源的JDBC连接池,它实现了数据源与JNDI绑定,支持JDBC3规范和实现了JDBC2的标准扩展说明的Connection和Statement池的DataSources对象。即将用于连接数据库的连接整合在一起形成一个随取随用的。

qq_30436011的博客 2535

C3P0数据库连接池的三种配置方式以及访问数据库的简单实现

1.配置方式 c3p0的三种配置方式: 1.setters一个个地设置各个配置项 2.类路径下提供一个c3p0.properties文件 3.类路径下提供一个c3p0-config.xml文件 注意:编写配置文件,要求有固定的格式和固定的名字(c3p0-config.xml和c3p0.properties)该配置文件要放到项目的src目录下 三中配置的优先级为:setters>c3p0-config.xml>c3p0.properties 优先级的验证: 情况一: 无论如何配置c

浅时光|初如梦 2369

使用dbcp、c3p0以及阿里druid数据源连接池配置参数详解

1. 使用dbcp数据源配置文件具体参数 <!-- 配置dbcp数据源 --> <bean id="dataSource2" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="${jdbc.driverClassName}"/> <property

u011519801的博客 393

c3p0 连接池配置数据源

1 <!-- 配置数据源 --> 2 <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> 3 <property name="driverClass" value="#{env...

dianmenju7110的博客 204

spring 下配置 dbcp,c3p0,proxool 等数据源连接池

spring 下如何配置 dbcp,c3p0,proxool 等数据源连接 池。 Spring 配置 dbcp 数据源: ${jdbc.driverClassName} ${jdbc.url} ${jdbc.username} ${jdbc.password} 80 20 3000 Spring 中配置 c3p0 数据源: ${jdbc....

80608989的专栏 195

c3p0数据库连接池数据源配置

管通过何种持久化技术,都必须通过数据连接访问数据库,在Spring中,数据连接是通过数据源获得的。在以往的应用中,数据源一般是 Web应用服务器提供的。在Spring中,你但可以通过JNDI获取应用服务器的数据源,也可以直接在Spring容器中配置数据源,此外,你还可以 通过代码的方式创建一个数据源,以便进行无依赖的单元测试 配置一个数据源     Spring在第三方依赖包中包含了

jianqiang789的专栏 5001

Spring配置数据源{连接池}(Druid、c3p0

我们知道一般产生对象有两种方式,1.使用构造方法进行注入。作为一个池子必要需要的连接需要候关闭(十分影响性能)上述多次使用过SET方法,可以借此使用Spring进行优化处理。1. pom.xml中导入Spring-framework坐标。(1)使用jdbc. properties文件。(2)使用jdbc. properties文件。作为连接池,使用的候借,用的候还。1. 导入数据源坐标与数据库的驱动坐标。1. 导入数据源坐标与数据库的驱动坐标。4. 使用数据源连接资源与归还资源。

m0_57532232的博客 183

JNDI学习总结(三):tomcat下使用c3p0数据库连接池配置JNDI数据源

tomcat是apache的,所以它的JNDI数据源默认使用commons组件的DBCP连接池配置。如果想使用c3p0配置数据源,就需要修改&lt;Resource&gt;标签里的部分配置选项,操作如下:1. 肯定是引入c3p0对应的jar包或者maven依赖啦,2. 按照上篇文章的配置方法, 将&lt;Resource&gt;标签的内容换成这个:...

↓ ↓ ↓ ↓ 633

C3P0与DBCP数据库连接池的区别,阿里的Druid数据源配置

现在常用的开源数据连接池主要有c3p0、dbcp和proxool三种,其中: hibernate开发组推荐使用c3p0; spring开发组推荐使用dbcp(dbcp连接池有weblogic连接池同样的问题,就是强行关闭连接或数据库重启后,无法reconnect,告诉连接被重置,这个设置可以解决); hibernate in action推荐使用c3p0和proxool; dbcp所需jar:co...

qq_40076012的博客 338

c3p0连接池配置_Java框架之配置数据源

看到小伙伴们留言项目导入了IDE会链接数据库看到这里我好痛心呀那么我们今天就来讲讲如何配置数据源。希望我可以把这个知识点说的简单明了,可以帮到各位小伙伴。首先来一起看一下我们的数据库链接四要素:第一行是根据数据库的类型同选用同的驱动包(我们这边用的是MySQL数据库)第二行是我们数据库链接的地址,后面 springjdbc_test 是我的数据库的名称,你的数据库叫什么这里就改成什么。剩下的...

weixin_39619433的博客 158

JDBC数据源连接池(2)---C3P0

我们接着《JDBC数据源连接池(1)---DBCP》继续介绍数据源连接池。 首先,在Web项目的WebContent---&gt;WEB-INF---&gt;lib文件夹中添加C3P0的jar包。 其次,编写C3P0的xml配置文件c3p0-config.xml ,内容如下: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;c3p0-con...

李章勇的博客 152

关于数据源连接池c3p0、dbcp、druid

今天发现了这个问题,数据源连接池配置方式dbcp c3p0 Druid 然后百度得到了第一个答案C3P0官方对于MySQL8小问题的解决方案 The last packet successfully received from the server was x milliseconds ago 由此牵扯出这三种数据源配置方式与区别。 严重: Servlet.service() for...

qq_21238927的博客 371

springMVC+c3p0数据源配置

//数据源公用设置     &lt;bean id="dataSource" name="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"&gt;           &lt;!-- 指定连接数据库的驱动--&gt;           &lt;property name="driverClass" value=&

张凡 1481

Spring中以占位符方式配置c3p0连接池

1、需要写一个c3p0.propeties文件,里面以键值对的方式存放着数据库连接池配置信息。 内容如下: ###### C3P0 dataBase connection pool ###### driverClass=oracle.jdbc.OracleDriver jdbcUrl=jdbc:oracle:thin:@168.9.202.49:1521:TEST user=TEST p

hu_shengyang的专栏 2029

[课本10.1.4]JDBC数据库连接池- C3P0数据源--通过构造方法创建数据源对象--通过配置文件创建数据源对象[推荐]...

JDBC- C3P0数据源 1 /*重点提醒*/ 2 连接数据库的较低的jar包版本会与较高版本的mysql版本有冲突; 3 通过把mysql 8.0的版本降到5.5, jar包仍使用较高的 mysql-connector-java-5.1.7-bin.jar, 完美解决冲突. 1-通过构造方法创建数据源对象 package C3P0数据源; import com...

weixin_30527423的博客 320

C3P0与DBCP数据库连接池的区别,阿里的Druid数据源配置入门

现在常用的开源数据连接池主要有c3p0、dbcp和proxool三种,其中: hibernate开发组推荐使用c3p0; spring开发组推荐使用dbcp(dbcp连接池有weblogic连接池同样的问题,就是强行关闭连接或数据库重启后,无法reconnect,告诉连接被重置,这个设置可以解决); hibernate in action推荐使用c3p0和proxool; dbc...

weixin_30682127的博客 177

mybatis设置数据源c3p0

当项目中单独使用mybatis配置数据源需要做如下配置,此处以c3p0为例 第一步: 继承UnpooledDataSourceFactory,继承类返回c3p0数据源即DataSource的实现类ComboPooledDataSource,如下所示 package com.ss.datasource; import org.apache.ibatis.datasource.unpool...

m0_37561039的博客 1138
上一篇: 内部动态写入JS
下一篇: input 位置 ,边框 ,背景色
Zeus
博客等级 码龄18年 62粉丝 70原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值