我想在java中为以下CQL命令编写QueryBuilder查询。
UPDATE category_utility
SET imageurls = imageurls + {'http://image1.jpg','http://image2.jpg','http://image3.jpg'} WHERE category_title = 'cat1';
在 JAVA 中,我尝试以下操作。我不知道如何在QueryBuilder命令中的set操作中编写 add 。
public void addImageList(ArrayList<String> list, int categoryId) {
Statement = QueryBuilder.update("category_utility").with(QueryBuilder.set("imageurls", list.toString())).where(QueryBuilder.eq("img_category_id", categoryId));
}
答案 0 :(得分:2)
您想使用QueryBuilder.addAll(String, Set<?>)
,但该方法需要Set
作为参数,而不是ArrayList
。
所以你需要修改你的方法如下:
public Statement addImages(Set<String> imageurls, int categoryId){
return QueryBuilder.update("category_utility")
.with(QueryBuilder.addAll("imageurls", imageurls))
.where(QueryBuilder.eq("img_category_id", categoryId));
}
答案 1 :(得分:1)
如果查看QueryBuilder类,可以添加addAll和remove,删除所有处理集更新的方法。