spring-boot - Spring Boot 不使用 cassandra 提交更改
问题描述
我有一个与 cassandra 通信的非常简单的 spring boot 应用程序。在我的示例中,当我运行 myApplication keySpace "myTestKeySpace" created 但当我停止自动从数据库中删除的应用程序时。怎么了?
@Configuration
public class CassandraConfig extends AbstractCassandraConfiguration {
public static final String KEYSPACE = "myTestKeySpace";
@Override
public SchemaAction getSchemaAction() {
return SchemaAction.CREATE;
}
@Override
protected List<CreateKeyspaceSpecification> getKeyspaceCreations() {
CreateKeyspaceSpecification specification = CreateKeyspaceSpecification.createKeyspace(KEYSPACE);
return Arrays.asList(specification);
}
@Override
protected List<DropKeyspaceSpecification> getKeyspaceDrops() {
return Arrays.asList(DropKeyspaceSpecification.dropKeyspace(KEYSPACE));
}
@Override
protected String getKeyspaceName() {
return KEYSPACE;
}
@Override
public String[] getEntityBasePackages() {
return new String[]{"com.mySite"};
}
}
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class , args);
}
}
解决方案
我从未将 Springdata 与 Cassandra 一起使用,但我猜该方法getKeyspaceDrops
会以与getKeyspaceCreations
创建键空间相同的方式删除键空间。
推荐阅读
- c++ - 在 C++ 的另一个函数中使用 main() 中的数组
- python - 使用 openpyxl 获取工作表的名称
- java - if 语句字节与整数
- object - 在 Logtalk 中将对象保存到文件
- angular - 如何使用量角器打字稿在具有跨度的按钮上单击具有相似元素详细信息的元素
- java - URLEncodedUtils 不解析来自给定 url 的所有获取参数
- java - leetcode 109:将排序列表转换为二叉搜索树
- java - NoClassDefFoundError: org/elasticsearch/script/ScriptEngine
- python - 根据 Python 中的唯一键将列中的类别转换为编码为 1 或 0 的多列
- firebase - 无法在 Firebase 中部署包含 @google-cloud/storage 的功能