使用springboot開發(fā)時,默認(rèn)使用內(nèi)置的tomcat數(shù)據(jù)庫連接池,經(jīng)常碰到這種情況:運行時間一長,數(shù)據(jù)庫連接中斷了。所以使用c3p0連接池吧。
引入的maven依賴:
1
2
3
4
5
|
< dependency > < groupId >c3p0</ groupId > < artifactId >c3p0</ artifactId > < version >0.9.1.2</ version > </ dependency > |
c3p0的配置信息,寫到application.properties配置文件中,需要注意的是,c3p0的數(shù)據(jù)庫用戶名是user不是username:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
c3p0.jdbcUrl=jdbc:mysql://ip:port/dnname?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false c3p0.user=${username} c3p0.password=${password} c3p0.driverClass=com.mysql.jdbc.Driver c3p0.minPoolSize=2 c3p0.maxPoolSize=10 c3p0.maxIdleTime=1800000 c3p0.acquireIncrement=3 c3p0.maxStatements=1000 c3p0.initialPoolSize=3 c3p0.idleConnectionTestPeriod=60 c3p0.acquireRetryAttempts=30 c3p0.acquireRetryDelay=1000 c3p0.breakAfterAcquireFailure=false c3p0.testConnectionOnCheckout=false |
springboot配置c3p0數(shù)據(jù)源datasource:
1
2
3
4
5
6
7
8
9
10
11
12
|
@Configuration public class DatasourceConfiguration { @Bean (name = "dataSource" ) @Qualifier (value = "dataSource" ) @Primary @ConfigurationProperties (prefix = "c3p0" ) public DataSource dataSource() { return DataSourceBuilder.create().type(com.mchange.v2.c3p0.ComboPooledDataSource. class ).build(); } } |
對于其他的一些數(shù)據(jù)源也可使用類似方式,當(dāng)然有些數(shù)據(jù)源springboot提供了更加簡潔的方式,需要參數(shù)官方文檔。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://www.cnblogs.com/xiaosiyuan/p/6255292.html