我有这个项目,我正在尝试根据配置连接到不同的数据库类型。
我让它适用于Mongo和MySQL,并通过使用@ConditionalOnProperty(name = "settings.data.source", havingValue = "mongodb")
现在我想添加Cassandra,但是一旦我将以下依赖项添加到我的pom,它就开始尝试连接到localhost上的Cassandra节点。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-cassandra</artifactId>
</dependency>
我希望能够更好地控制何时加载Cassandra资源。
当我添加Mongo依赖项时,它不会尝试自动连接:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
有谁熟悉这种行为?我该怎么控制呢?我并不总是需要Cassandra连接...
答案 0 :(得分:5)
您可以禁用Cassandra自动配置,
@SpringBootApplication
@EnableAutoConfiguration(exclude={CassandraDataAutoConfiguration.class})
答案 1 :(得分:0)
@EnableAutoConfiguration(exclude={
CassandraDataAutoConfiguration.class,
MongoDataAutoConfiguration.class,
MongoRepositoriesAutoConfiguration.class,
MongoAutoConfiguration.class})
我的@SpringBootApplication
和@Configuration
类。