栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring-Boot:如何设置JDBC池属性(如最大连接数)?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring-Boot:如何设置JDBC池属性(如最大连接数)?

事实证明,设置这些配置属性非常简单,但是官方文档更为通用,因此在专门搜索连接池配置信息时可能很难找到。

要为tomcat-jdbc设置最大池大小,请在.properties或.yml文件中设置以下属性:

spring.datasource.maxActive=5

如果愿意,还可以使用以下内容:

spring.datasource.max-active=5

你可以通过这种方式设置任何需要的连接池属性。这是所支持的属性的完整列表tomcat-jdbc。

为了更一般地理解它是如何工作的,你需要稍微深入一下Spring-Boot代码。

Spring-Boot像这样构造DataSource:

@ConfigurationProperties(prefix = DataSourceAutoConfiguration.CONFIGURATION_PREFIX)@Beanpublic DataSource dataSource() {    DataSourceBuilder factory = DataSourceBuilder .create(this.properties.getClassLoader()) .driverClassName(this.properties.getDriverClassName()) .url(this.properties.getUrl()) .username(this.properties.getUsername()) .password(this.properties.getPassword());    return factory.build();}

通过检查类路径上的一系列已知类中的每一个,DataSourceBuilder负责确定要使用哪个池库。然后构造数据源并将其返回给

dataSource()
函数。

至此,魔术开始了

@ConfigurationProperties
。此批注告诉Spring寻找带有前缀
CONFIGURATION_PREFIX
(即
spring.datasource
)的属性。对于以该前缀开头的每个属性,Spring都会尝试使用该属性在DataSource上调用setter。

Tomcat的数据源是的延伸DataSourceProxy,其具有方法

setMaxActive()

这就是

spring.datasource.maxActive=5
正确应用你的方式!

那其他连接池呢
我还没有尝试过,但是如果你使用的是其他Spring-Boot支持的连接池(当前为HikariCP或Commons DBCP),则应该能够以相同的方式设置属性,但是你需要查看项目文档以了解可用的内容。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/402516.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号