spring中配置MySql数据源,怎样配置数据库信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring中配置MySql数据源,怎样配置数据库信息相关的知识,希望对你有一定的参考价值。
参考技术A 我知道的有两种:一种:
单独写个jdbc.properties,在里面配置
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/school
jdbc.username=root
jdbc.password=root
然后,在applicationContext中设置你的jdbc.properties路径:
<bean id="propertyConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:jdbc.properties</value>
</list>
</property>
</bean>
在dataSource bean中把你配置中的参数引用:
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>$jdbc.driverClassName</value>
</property>
<property name="url">
<value>$jdbc.url</value>
</property>
<property name="username">
<value>$jdbc.username</value>
</property>
<property name="password">
<value>$jdbc.password</value>
</property>
</bean>
二种,这种比较简单点儿,就直接在datasource bean中把jdbc.properties中的值在里面对应的地方配置就可以了。本回答被提问者和网友采纳 参考技术B <!-- 配置数据源 -->
<!-- BoneCP configuration -->
<!-- <property name="disableJMX" value="true"/> <property name="disableConnectionTracking" value="true"/ -->
<bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
<property name="poolName" value="project" />
<property name="driverClass" value="$driverClassName" />
<property name="jdbcUrl" value="$url" />
<property name="username" value="$username" />
<property name="password" value="$password" />
<property name="partitionCount" value="2" />
<property name="idleConnectionTestPeriodInSeconds" value="600" />
<property name="idleMaxAgeInSeconds" value="120" />
<property name="maxConnectionAgeInSeconds" value="600" />
<property name="maxConnectionsPerPartition" value="20" />
<property name="minConnectionsPerPartition" value="1" />
<property name="poolAvailabilityThreshold" value="3" />
<property name="acquireIncrement" value="1" />
<property name="releaseHelperThreads" value="2" />
<property name="statementsCacheSize" value="100" />
<property name="closeConnectionWatch" value="true" />
<property name="logStatementsEnabled" value="true" />
<property name="disableConnectionTracking" value="false" />
<property name="queryExecuteTimeLimitInMs" value="6000" />
</bean>
mysql在spring中jdbc.properties连接配置
############################## mysql的数据源 ##############################
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/test
jdbc.username=root
jdbc.password=root
#初始化连接
jdbc.initialSize=10
#最大连接数量
jdbc.maxActive=50
#最大空闲连接
jdbc.maxIdle=20
#最小空闲连接
jdbc.minIdle=5
#超时等待时间以毫秒为单位
#maxWait代表当Connection用尽了,多久之后进行############################## mysql的数据源 ##############################
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/test
jdbc.username=root
jdbc.password=root
#初始化连接
jdbc.initialSize=10
#最大连接数量
jdbc.maxActive=50
#最大空闲连接
jdbc.maxIdle=20
#最小空闲连接
jdbc.minIdle=5
#超时等待时间以毫秒为单位
#maxWait代表当Connection用尽了,多久之后进行回收丢失连接
jdbc.maxWait=1000
#取得对象时是否进行验证,检查对象是否有效,默认为false
jdbc.testOnBorrow=true
#验证连接是否有效的SQL文
jdbc.validationQuery=select 1
#执行验证连接有效SQL文的超时时间
jdbc.validationQueryTimeout=100
#返回对象时是否进行验证,检查对象是否有效,默认为false
jdbc.testOnReturn=false
#空闲时是否进行验证,检查对象是否有效,默认为false
jdbc.testWhileIdle=true
#大于0 ,进行连接空闲时间判断,或为0,对空闲的连接不进行验证;默认30分钟 (毫秒)
jdbc.minEvictableIdleTimeMillis=1800000
#失效检查线程运行时间间隔,如果小于等于0,不会启动检查线程 (毫秒)
jdbc.timeBetweenEvictionRunsMillis=60000
#是否在自动回收超时连接的时候打印连接的超时错误
#jdbc.logAbandoned=true
#是否自动回收超时连接
jdbc.removeAbandoned=true
#超时时间(以秒数为单位)
#设置超时时间有一个要注意的地方,超时时间=现在的时间-程序中创建Connection的时间,如果 maxActive比较大,比如超过100,那么removeAbandonedTimeout可以设置长一点比如180,也就是三分钟无响应的连接进行 回收,当然应用的不同设置长度也不同。
jdbc.removeAbandonedTimeout=180
#打开PSCache,并且指定每个连接上PSCache的大小
jdbc.maxPoolPreparedStatementPerConnectionSize=20
jdbc.poolPreparedStatements=true
#配置监控统计拦截的filters
jdbc.filters=slf4j
回收丢失连接
jdbc.maxWait=1000
#取得对象时是否进行验证,检查对象是否有效,默认为false
jdbc.testOnBorrow=true
#验证连接是否有效的SQL文
jdbc.validationQuery=select 1
#执行验证连接有效SQL文的超时时间
jdbc.validationQueryTimeout=100
#返回对象时是否进行验证,检查对象是否有效,默认为false
jdbc.testOnReturn=false
#空闲时是否进行验证,检查对象是否有效,默认为false
jdbc.testWhileIdle=true
#大于0 ,进行连接空闲时间判断,或为0,对空闲的连接不进行验证;默认30分钟 (毫秒)
jdbc.minEvictableIdleTimeMillis=1800000
#失效检查线程运行时间间隔,如果小于等于0,不会启动检查线程 (毫秒)
jdbc.timeBetweenEvictionRunsMillis=60000
#是否在自动回收超时连接的时候打印连接的超时错误
#jdbc.logAbandoned=true
#是否自动回收超时连接
jdbc.removeAbandoned=true
#超时时间(以秒数为单位)
#设置超时时间有一个要注意的地方,超时时间=现在的时间-程序中创建Connection的时间,如果 maxActive比较大,比如超过100,那么removeAbandonedTimeout可以设置长一点比如180,也就是三分钟无响应的连接进行 回收,当然应用的不同设置长度也不同。
jdbc.removeAbandonedTimeout=180
#打开PSCache,并且指定每个连接上PSCache的大小
jdbc.maxPoolPreparedStatementPerConnectionSize=20
jdbc.poolPreparedStatements=true
#配置监控统计拦截的filters
jdbc.filters=slf4j
以上是关于spring中配置MySql数据源,怎样配置数据库信息的主要内容,如果未能解决你的问题,请参考以下文章