当前位置:  开发笔记 > 运维 > 正文

Spring-boot_1.4.2数据源配置

如何解决《Spring-boot_1.4.2数据源配置》经验,为你挑选了1个好方法。

最近我迁移到最新的spring-boot版本(1.4.2).我观察到一些旧的属性更受支持.

旧配置

spring.datasource.max-active=1
spring.datasource.validation-query=/* ping */ SELECT 1
spring.datasource.test-on-borrow=true
spring.datasource.initial-size=1

新配置

spring.datasource.dbcp.max-active=1
spring.datasource.dbcp.validation-query=/* ping */ SELECT 1
spring.datasource.dbcp.test-on-borrow=true
spring.datasource.dbcp.initial-size=1

迁移到新配置后,我的应用程序仍在使用10连接,这是默认配置.

我错过了哪些附加配置?



1> g00glen00b..:

根据文档,默认情况下,Spring引导使用Tomcat JDBC.它也默认包含在spring-boot-starter-jdbc中,它包含在spring-boot-starter-data-jpa中.

我们更喜欢将Tomcat池化DataSource用于其性能和并发性,因此如果可用,我们总是选择它.

否则,如果HikariCP可用,我们将使用它.

如果Tomcat池数据源和HikariCP都不可用,并且Commons DBCP可用,我们将使用它,但我们不建议在生产中使用它.

最后,如果Commons DBCP2可用,我们将使用它.

这意味着您应该使用spring.datasource.tomcat.*属性,例如:

spring.datasource.tomcat.max-active=1
spring.datasource.tomcat.validation-query=/* ping */ SELECT 1
spring.datasource.tomcat.test-on-borrow=true
spring.datasource.tomcat.initial-size=1

或者,如果您更喜欢DBCP,则可以通过定义spring.datasource.type属性并提供连接池实现的完全限定名称来实现.在这种情况下,您将不得不使用maxTotal,因为maxActive根据DBCP的文档不存在.

请记住,将正确版本的DBCP添加到类路径中.如果您要添加1.x,则可以使用spring.datasource.dbcp.*属性(如您使用的那样),但是,如果您使用的是2.x,则应使用以下spring.datasource.dbcp2.*属性:

# Commons DBCP 1.x
spring.datasource.dbcp.max-total=1
spring.datasource.dbcp.validation-query=/* ping */ SELECT 1
spring.datasource.dbcp.test-on-borrow=true
spring.datasource.dbcp.initial-size=1
spring.datasource.type=org.apache.commons.dbcp.BasicDataSource # To override the default classpath lookup behaviour

# Commons DBCP 2.x
spring.datasource.dbcp2.max-total=1
spring.datasource.dbcp2.validation-query=/* ping */ SELECT 1
spring.datasource.dbcp2.test-on-borrow=true
spring.datasource.dbcp2.initial-size=1
spring.datasource.type=org.apache.commons.dbcp2.BasicDataSource # To override the default classpath lookup behaviour

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有