Мне сложно найти примерную программу, которая использует выполнение оператора партии в качестве аргумента для org.springframework.data.cassandra.core.CassandraTemplate;
В основном я пытаюсь сделать несколько вставки в виде пакета.
CqlTemplate cqltemplate = new CqlTemplate(session);
cqltemplate.execute(Batch arg0);
Как все это объединяется? Также пакет имеет проблемы с введением нескольких записей в любую неизвестную таблицу (не связанную с классом сущности). Мой проект требует метода для множественной вставки для данной таблицы и hashmap ключа и значений (данных строки), который не имеет эквивалентного класса POJO. Любые предложения о том, как достичь этого?
Я смог разобраться. Спасибо за руководство. Извините, что опоздал:
Insert insert1 = QueryBuilder.insert...
Batch batch = QueryBuilder.batch(insert1);
Insert insert2 = QueryBuilder.insert...
batch.add(insert2);
CassandraOperations cassandraOperations = new CassandraTemplate(session);
WriteOptions options = new WriteOptions();
options.setTtl(60);
options.setConsistencyLevel(ConsistencyLevel.ONE);
options.setRetryPolicy(RetryPolicy.DOWNGRADING_CONSISTENCY);
cassandraOperations.execute(batch.toString(), options);
Согласно ссылке вам нужно создать объект class com.datastax.driver.core.querybuilder.Batch
. Вы можете создать batch
метод com.datastax.driver.core.querybuilder.QueryBuilder
. CQLTemplate не следует создавать в коде, он должен быть введен в конфигурацию:
CQLTemplate cqlTemplate=new CQLTemplate();
yourServiceBean.setCQLTemplate(cqlTemplate);
И в вашем сервисе /dao это будет что-то вроде:
Batch batch=QueryBuilder.batch (...)
cqlTemplate.execute(batch);