`

Spring + Hibernate 配置 C3P0 连接池

阅读更多

  1. <bean id="dataSource"  
  2.   
  3.         class="com.mchange.v2.c3p0.ComboPooledDataSource"  
  4.   
  5.         destroy-method="close">  
  6.   
  7.         <property name="driverClass">  
  8.   
  9.             <value>com.mysql.jdbc.Driver</value>  
  10.   
  11.         </property>  
  12.   
  13.         <property name="jdbcUrl">  
  14.   
  15.             <value>jdbc:mysql://ip地址:3306/数据库名字?useUnicode=true&characterEncoding=utf-8</value>  
  16.   
  17.         </property>  
  18.   
  19.         <property name="user">  
  20.   
  21.             <value>root</value>  
  22.   
  23.         </property>  
  24.   
  25.         <property name="password">  
  26.   
  27.             <value>root</value>  
  28.   
  29.         </property>  
  30.   
  31.  <!--连接池中保留的最小连接数。-->  
  32.   
  33.         <property name="minPoolSize">  
  34.   
  35.             <value>5</value>  
  36.   
  37.         </property>  
  38.   
  39.  <!--连接池中保留的最大连接数。Default: 15 -->  
  40.   
  41.         <property name="maxPoolSize">  
  42.   
  43.             <value>30</value>  
  44.   
  45.         </property>  
  46.   
  47. <!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->  
  48.   
  49.         <property name="initialPoolSize">  
  50.   
  51.             <value>10</value>  
  52.   
  53.         </property>  
  54.   
  55.  <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->  
  56.   
  57.         <property name="maxIdleTime">  
  58.   
  59.             <value>60</value>  
  60.   
  61.         </property>  
  62.   
  63.  <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->  
  64.   
  65.         <property name="acquireIncrement">  
  66.   
  67.             <value>5</value>  
  68.   
  69.         </property>  
  70.   
  71.  <!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements   
  72.   属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。   
  73.   如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0-->  
  74.   
  75.         <property name="maxStatements">  
  76.   
  77.             <value>0</value>  
  78.   
  79.         </property>  
  80.   
  81.  <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->  
  82.   
  83.         <property name="idleConnectionTestPeriod">  
  84.   
  85.             <value>60</value>  
  86.   
  87.         </property>  
  88.   
  89.  <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->  
  90.   
  91.         <property name="acquireRetryAttempts">  
  92.   
  93.             <value>30</value>  
  94.   
  95.         </property>  
  96.   
  97.  <!--获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效   
  98.   保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试   
  99.   获取连接失败后该数据源将申明已断开并永久关闭。Default: false-->  
  100.   
  101.         <property name="breakAfterAcquireFailure">  
  102.   
  103.             <value>true</value>  
  104.   
  105.         </property>  
  106.   
  107.  <!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的   
  108.   时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable   
  109.   等方法来提升连接测试的性能。Default: false -->  
  110.   
  111.         <property name="testConnectionOnCheckout">  
  112.   
  113.             <value>false</value>  
  114.   
  115.         </property>  
  116.   
  117.     </bean>  
  118.   

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics