C3P0 连接池配置详解

C3P0 连接池配置详解c3p0-config>   default-config>      property name=”acquireIncrement”>3property>        property name=”acquireRetryAttempts”>30property>        property name=”acquireRetryDelay”>1000p

大家好,又见面了,我是你们的朋友全栈君。

  1. <c3p0-config>   
  2. <default-config>   
  3. <!–当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 –>   
  4. <property name=“acquireIncrement”>3</property>   
  5.   
  6. <!–定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 –>   
  7. <property name=“acquireRetryAttempts”>30</property>   
  8.   
  9. <!–两次连接中间隔时间,单位毫秒。Default: 1000 –>   
  10. <property name=“acquireRetryDelay”>1000</property>   
  11.   
  12. <!–连接关闭时默认将所有未提交的操作回滚。Default: false –>   
  13. <property name=“autoCommitOnClose”>false</property>   
  14.   
  15. <!–c3p0将建一张名为Test的空表,并使用其自带的查询语句进行测试。如果定义了这个参数那么   
  16. 属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操作,它将只供c3p0测试   
  17. 使用。Default: null–>   
  18. <property name=“automaticTestTable”>Test</property>   
  19.   
  20. <!–获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效   
  21. 保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试   
  22. 获取连接失败后该数据源将申明已断开并永久关闭。Default: false–>   
  23. <property name=“breakAfterAcquireFailure”>false</property>   
  24.   
  25. <!–当连接池用完时客户端调用getConnection()后等待获取新连接的时间,超时后将抛出   
  26. SQLException,如设为0则无限期等待。单位毫秒。Default: 0 —>   
  27. <property name=“checkoutTimeout”>100</property>   
  28.   
  29. <!–通过实现ConnectionTester或QueryConnectionTester的类来测试连接。类名需制定全路径。   
  30. Default: com.mchange.v2.c3p0.impl.DefaultConnectionTester–>   
  31. <property name=“connectionTesterClassName”></property>   
  32.   
  33. <!–指定c3p0 libraries的路径,如果(通常都是这样)在本地即可获得那么无需设置,默认null即可   
  34. Default: null–>   
  35. <property name=“factoryClassLocation”>null</property>   
  36.   
  37. <!–Strongly disrecommended. Setting this to true may lead to subtle and bizarre bugs.   
  38. (文档原文)作者强烈建议不使用的一个属性–>   
  39. <property name=“forceIgnoreUnresolvedTransactions”>false</property>   
  40.   
  41. <!–每60秒检查所有连接池中的空闲连接。Default: 0 –>   
  42. <property name=“idleConnectionTestPeriod”>60</property>   
  43.   
  44. <!–初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 –>   
  45. <property name=“initialPoolSize”>3</property>   
  46.   
  47. <!–最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 –>   
  48. <property name=“maxIdleTime”>60</property>   
  49.   
  50. <!–连接池中保留的最大连接数。Default: 15 –>   
  51. <property name=“maxPoolSize”>15</property>   
  52.   
  53. <!–JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements   
  54. 属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。   
  55. 如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0–>   
  56. <property name=“maxStatements”>100</property>   
  57.   
  58. <!–maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 –>   
  59. <property name=“maxStatementsPerConnection”></property>   
  60.   
  61. <!–c3p0是异步操作的,缓慢的JDBC操作通过帮助进程完成。扩展这些操作可以有效的提升性能   
  62. 通过多线程实现多个操作同时被执行。Default: 3–>   
  63. <property name=“numHelperThreads”>3</property>   
  64.   
  65. <!–当用户调用getConnection()时使root用户成为去获取连接的用户。主要用于连接池连接非c3p0   
  66. 的数据源时。Default: null–>   
  67. <property name=“overrideDefaultUser”>root</property>   
  68.   
  69. <!–与overrideDefaultUser参数对应使用的一个参数。Default: null–>   
  70. <property name=“overrideDefaultPassword”>password</property>   
  71.   
  72. <!–密码。Default: null–>   
  73. <property name=“password”></property>   
  74.   
  75. <!–定义所有连接测试都执行的测试语句。在使用连接测试的情况下这个一显著提高测试速度。注意:   
  76. 测试的表必须在初始数据源的时候就存在。Default: null–>   
  77. <property name=“preferredTestQuery”>select id from test where id=1</property>   
  78.   
  79. <!–用户修改系统配置参数执行前最多等待300秒。Default: 300 –>   
  80. <property name=“propertyCycle”>300</property>   
  81.   
  82. <!–因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的   
  83. 时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable   
  84. 等方法来提升连接测试的性能。Default: false —>   
  85. <property name=“testConnectionOnCheckout”>false</property>   
  86.   
  87. <!–如果设为true那么在取得连接的同时将校验连接的有效性。Default: false –>   
  88. <property name=“testConnectionOnCheckin”>true</property>   
  89.   
  90. <!–用户名。Default: null–>   
  91. <property name=“user”>root</property>   
  92.   
  93. <!–早期的c3p0版本对JDBC接口采用动态反射代理。在早期版本用途广泛的情况下这个参数   
  94. 允许用户恢复到动态反射代理以解决不稳定的故障。最新的非反射代理更快并且已经开始   
  95. 广泛的被使用,所以这个参数未必有用。现在原先的动态反射与新的非反射代理同时受到   
  96. 支持,但今后可能的版本可能不支持动态反射代理。Default: false–>   
  97. <property name=“usesTraditionalReflectiveProxies”>false</property>  
  98.   
  99. <property name=“automaticTestTable”>con_test</property>   
  100. <property name=“checkoutTimeout”>30000</property>   
  101. <property name=“idleConnectionTestPeriod”>30</property>   
  102. <property name=“initialPoolSize”>10</property>   
  103. <property name=“maxIdleTime”>30</property>   
  104. <property name=“maxPoolSize”>25</property>   
  105. <property name=“minPoolSize”>10</property>   
  106. <property name=“maxStatements”>0</property>   
  107. <user-overrides user=“swaldman”>   
  108. </user-overrides>   
  109. </default-config>   
  110. <named-config name=“dumbTestConfig”>   
  111. <property name=“maxStatements”>200</property>   
  112. <user-overrides user=“poop”>   
  113. <property name=“maxStatements”>300</property>   
  114. </user-overrides>   
  115. </named-config>   
  116. </c3p0-config>  
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134333.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 在 Ubuntu系统下安装 OpenCV 全过程

    在 Ubuntu系统下安装 OpenCV 全过程经过不断的试错、安装、删除重装……写下这篇博客,希望其他人安装时能够轻松一点,少几次还原重装……版本:ubuntu18.10OpenCV-4.1.0首先,OpenCV有在ubuntu上安装的官方文档:https://docs.opencv.org/4.1.0/d7/d9f/tutorial_linux_install.html大家可以参照官方文档进行操作…

  • nginx简单配置多个server

    nginx简单配置多个server1:安装nginx步骤就不说了,自行百度。2:打开nginx的配置文件nginx.conf这是项目1的配置,现在需要再开个同域名不同端口的项目,如下图:注意:LZ一直出现访问不了,折腾了许久,是因为服务器www.pigaudio.com或120.77.223.7只开了默认的80端口,而8088端口并未开,所以只需要登陆你的服务账号添加一个8088即可,比如你的服务器是阿里云购买的,则需要登陆阿里…

    2022年10月31日
  • js字符串转html_vue文件如何编译成html

    js字符串转html_vue文件如何编译成htmlhtml代码如何转换成js文件这个很简单首先你要把html代码转成js代码有这种转换工具的搜下代码转换工具就可以再把你转换好了的代码放到文本中把后缀名改成点js就可以了可以用txt文档改js文件用记事本可以打开小编喝醉了酒,流入街头可怜的像条狗,哭着对你说别走,你义无反顾笑笑也不回头。把HTML代码放到document.write方法的括号中,并用引号括起来,将原来HTML中的引号进…

  • python用冒泡法排序_数组冒泡排序c语言函数

    python用冒泡法排序_数组冒泡排序c语言函数arr=[7,4,3,67,34,1,8].defbubble_sort:最近在学习Python,下面是我的一些笔记冒泡排序实现思路:使用双重for循环,内层变量为i,外层为j,在内层循环中不断的比较相邻的两个值(i,i+1)的大小,如果i+1的值大于i的值,交换两者位置,每循环一次,外层的j增加1,等到j等于n-1的时候,结束循环第一次看不懂很正常,不要灰心,下面是使用代码的实现arr=…

    2022年10月16日
  • 找回 Ubuntu 11.10 的传统界面 (Gnome Classic)

    找回 Ubuntu 11.10 的传统界面 (Gnome Classic)

  • golang 使用os/exec配合context实现的超时机制

    golang 使用os/exec配合context实现的超时机制

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号