Запрос имени динамического поля с использованием N1QL

У меня есть вариант использования, который я не могу решить. По сути, мне нужно создать веб-сервис, в котором пользователи могут «динамически» запрашивать кластер Couchbase. Действительно, я храню метаданные разных файлов, и «создание» этих метаданных зависит от пользователя: у меня нет определенных полей в моем Java POJO, я вставляю MAP, который вставляется как вложенный объект в кушетке.

Теперь запрос, который мне нужен, довольно прост на бумаге и выглядит примерно так:

@Query("#{#n1ql.selectEntity} WHERE #{#n1ql.filter} AND $1 = $2")
List<FileMetadata> findListMetadata(String pKey, String pValue);

Но, похоже, это не работает, похоже, $1 никогда не заменяется переменной pKey. Я использую CouchBase 4.5 с разъемом Spring Data.

Любые идеи о том, как решить этот вариант использования?


person Christophe Schutz    schedule 08.04.2016    source источник
comment
Вам нужно динамически генерировать строку запроса, чтобы pKey вставлялся в строку запроса, а pValue передавался как параметр (как вы делаете).   -  person geraldss    schedule 08.04.2016


Ответы (1)


Вам нужно динамически генерировать строку запроса, чтобы pKey вставлялся в строку запроса, а pValue передавался как параметр (как вы делаете).

person geraldss    schedule 08.04.2016