我爱编程

配置_连接池的通用配置

2018-05-29  本文已影响0人  七枷琴子

德鲁伊,JDBC连接池,C3P0连接池

只要换一下class就行了

properites文件内容:
# oracle jdbc properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/demo1
jdbc.user=root
jdbc.password=666

此配置文件中的xxxx.user,例如jdbc.user中的jdbc.可以更换,但是不可以省略,因为直接使用user=root的话会与系统中的保留user字段冲突,导致连接失败

<!-- 加载properties文件 -->
    <context:property-placeholder location="classpath:config.properties" />

<!-- C3P0配置本体-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${jdbc.driver}" />
        <property name="jdbcUrl" value="${jdbc.url}" />
        <property name="user" value="${jdbc.user}" />
        <property name="password" value="${jdbc.password}" />
        
    <!--以下配置按需修改 -->    
        <!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
        <property name="initialPoolSize" value="5" />
        <!--连接池中保留的最小连接数。 -->
        <property name="minPoolSize" value="1" />
        <!--连接池中保留的最大连接数。Default: 15 -->
        <property name="maxPoolSize" value="100" />
        <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
        <property name="maxIdleTime" value="300" />
        <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
        <property name="acquireIncrement" value="5" />
        <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->
        <property name="idleConnectionTestPeriod" value="60" />
    </bean>

oracle的链接不会自动关闭,mysql的链接到8小时会自动关闭,所以有两个注意点:

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

这条属性,数值可以按需调整

2.不同数据库的方言问题

mysql:

 <!--  以阿里云mysql数据库为例 -->
<property name="jpaVendorAdapter">
    <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
        <property name="generateDdl" value="true" />
        <property name="database" value="MYSQL" />
        <property name="databasePlatform" value="org.hibernate.dialect.MySQLDialect" />
        <property name="showSql" value="true" />
    </bean>
</property>

Oracle

<!-- 以本地oracle_xe11版为例配置 -->
  
<property name="jpaVendorAdapter">
    <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
        <property name="generateDdl" value="true" />
        <property name="database" value="ORACLE" />
        <property name="databasePlatform" value="org.hibernate.dialect.Oracle10gDialect" />
        <property name="showSql" value="true" />
    </bean>
</property>

上一篇下一篇

猜你喜欢

热点阅读