如何配置 Spring 开机不连接数据库

How to configure Spring Boot to not connect to database

请注意:这个问题不是一个骗局,我什至在下面引用了另一个类似的问题。我断言我的情况与所引用的其他问题截然不同。


我正在建立 Spring 启动 Web 服务,该服务 由任何数据库、JDBC 或 RDBMS 数据源支持。

启动时出现错误:

Cannot determine embedded database driver class for database type NONE

在 SO 上,我看到 very similar question here 其中接受的答案是:

"You haven't provided Spring Boot with enough information to auto-configure a DataSource"

...并继续解释如何在应用程序配置文件中设置适当的值:

spring.datasource.url = ...
spring.datasource.driver-class-name = ...

但是如果我不想要 任何 数据源怎么办?! 在另一个问题中,用户通过以下方式连接到 NoSQL数据核。就我而言,我(至少目前)对连接到 any 类型的数据源不感兴趣(此服务的所有数据都将来自其他基于云的 REST 服务).

这里有什么解决方法?

根据 the documentation,您可以通过从 Spring Boot 为您执行的自动配置中排除 DataSourceAutoConfiguration 来关闭此行为。

@Configuration
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class MyConfiguration {
    // ...
}

更新回答问题:通过使用@SpringBootApplication,它会自动拉入@EnableAutoConfiguration,如果它看到 jdbc 罐子类路径,将 add/execute DataSourceAutoConfiguration。上面的代码关闭了这个行为。