Spring Data-jdbc依赖关系会自动配置数据源和JDBCTemplate?

问题描述

在春季测试中,存在一个问题: “ Spring Data JDBC依赖关系会自动配置数据源和JDBCTemplate吗?”

我之所以拒绝,是因为您需要像h2或oracle这样的数据库连接器依赖项来自动配置数据源? JDBCTemplate还总是需要数据源吗?

解决方法

我怀疑您的想法是正确的,而且措辞也不太正确。

严格来说, Spring Data JDBC 根本不执行任何自动配置。

自动配置由Spring Boot与 Spring Boot Spring Data JDBC starter 共同完成,这取决于(即包括 Spring Boot Starter JDBC 完成的自动配置>

这实际上是自动配置Datasource的一个,如果有Datasource可用,它还会提供/配置JdbcTemplate

为了至少能够配置Datasource,需要JDBC驱动程序。 根据环境(是否在内存数据库中,是否在执行测试),还可能需要一些配置属性,例如JDBC URL。

如果您想更好地了解自动配置的条件,我建议使用Spring Boot autoconfiguration classes列表。 如果您在该列表中搜索例如在“数据源”中,您会找到相关的类以及指向它们的源代码和注释的链接,即使您还不了解Spring Boot在内部的确切工作方式,我认为它们还是可以理解的。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...