嵌入式码头服务器的 Spring Boot 数据源特定属性
Posted
技术标签:
【中文标题】嵌入式码头服务器的 Spring Boot 数据源特定属性【英文标题】:Spring boot datasource specific properties for embedded jetty server 【发布时间】:2018-01-08 14:07:14 【问题描述】:我有 spring boot 应用程序,它基本上是一个 gradle 项目,所以,我在我的 gradle 文件中添加了以下依赖项:
org.springframework.boot:spring-boot-gradle-plugin:1.5.1.RELEASE
应用程序被部署在嵌入式码头服务器中。我在 application.properties 中有以下一组属性用于数据库连接轮询:
spring.datasource.driver-class-name
spring.datasource.max-active
spring.datasource.max-idle
spring.datasource.min-idle
spring.datasource.validation-query
spring.datasource.name
我指的是以下两个链接:
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.4-Configuration-Changelog
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.5-Configuration-Changelog
我了解到,我的应用程序的 application.properties 文件中使用的一些数据源属性从 sprint 启动版本 1.4 开始被删除,但问题是他们没有提到要使用的新属性是什么。与 tomcat 服务器一样,它们提供了所有属性集,但不适用于 jetty 服务器。在我的应用程序运行一段时间后,我遇到了一些与数据库相关的错误,例如“连接太多”,我的假设是我当前使用的数据源道具不正确,应该用正确的值替换,但不幸的是我无法找到正确的属性名字。
【问题讨论】:
【参考方案1】:Jetty 没有自己的 Pooling DataSource 实现。您可以在项目中包含 HikariCP 并使用 spring.datasource.hikari.*
属性进行自定义。每个属性都与可以在 Hikari 的数据源实现上设置的 bean 属性匹配。
【讨论】:
感谢您的回答。我已经添加了 hikari 道具,您知道如何确保这些新属性是否真的被读取并创建了连接池吗?以上是关于嵌入式码头服务器的 Spring Boot 数据源特定属性的主要内容,如果未能解决你的问题,请参考以下文章
Spring Batch 使用带有 Spring Boot 的 MongoDB 抛出无法确定数据库类型的嵌入式数据库驱动程序类 NONE
Spring Boot postgresql嵌入式tomcat启动失败