0

Я пробую это и отлично работаю.Cassandra Spring mvc - как передать значение

@Autowired 

private CassandraOperations cassandraOperations; 

in my method 
{ 
    String cqlAll = "select * from customer where cust_id=123"; 

    List<Customer> results = cassandraOperations.select(cqlAll, Customer.class); 
    for (Customer p : results) 
    { 
    System.out.println(p.getCust_id() + "-"+p.getCust_name()+"-"+p.getCust_password()); 
    } 
} 

, но я хочу передать значение в строку, чтобы я мог написать свой файл запроса отдельно. что-то вроде этого,

String cqlAll = "select * from customer where cust_id=?"; 

objects[] obj = {123}; 

List<Customer> results = cassandraOperations.select(cqlAll, obj ,Customer.class); 

for (Customer p : results) 
{ 
System.out.println(p.getCust_id() + "-"+p.getCust_name()+"-"+ 
    p.getCust_password()); 
} 

ответ

0

CassandraOperation выбрать метод может быть также строить с com.datastax.driver.core.querybuilder.Select, как я могу видеть из spring data cassandra documentation.

У меня нет большого опыта работы с Кассандрой весной данных, так как мы работаем напрямую с datastax драйвером Java, но это должно работать выбрать:

final Select select = QueryBuilder.select().all().from("customer") 
      .where(QueryBuilder.eq("cust_id", 123)).limit(200); 
cassandraOperations.select(select ,Customer.class); 

123 может быть любое динамическое значение извлекается из объекта.

Update может быть сделано с помощью CqlOperations:

CqlOperations cqlOperations = new CqlOperations(); //or autowire it 
final Statement update = QueryBuilder.update("customer") 
       .with(QueryBuilder.set("email", "[email protected]")) 
       .where(QueryBuilder.eq("cust_id", 123)); 
cqlOperations.execute(update); 

QueryBuilder еще несколько примеров можно найти here.

+0

heyy @Nenad благодарит за ответ ... затем для обновления, мне нужно использовать обновление обновления = QueryBuilder ..... и т. Д.? Вы можете показать пример обновления, пожалуйста ... –

+0

Что касается обновления, я не вижу метода в CassandraOperations, который принимает инструкцию Update, все делается с Entity, поэтому догадка не может быть doen с QueryBuilder http://docs.spring.io/spring -data/cassandra/docs/current/api/org/springframework/data/cassandra/core/CassandraOperations.html –

+0

Это можно сделать с помощью CqlOperations, поэтому добавленный пример для этого http://docs.spring.io/spring- data/cassandra/docs/current/api/org/springframework/cassandra/core/CqlOperations.html –

 Смежные вопросы

  • Нет связанных вопросов^_^