N1QL クエリを使用して spring-data カウチベース リポジトリにクエリを実行しようとしています。私には2つの疑問があります:
@Query アノテーションを使用してクエリを生成しています。コードは次のようになります。
@Query("#{#n1ql.selectEntity} WHERE $0 = $1 AND #{#n1ql.filter}")
public Page<GsJsonStore> matchJson(String term, String value, Pageable pageable);
//Query
Page<GsJsonStore> p = repo.matchJson("_object.details.status", "ready", pg);
このクエリは結果を返しません。ただし、cbq で同じクエリ (以下) を実行すると、目的の結果が得られます。
select * from default where _object.details.status = 'ready';
Couchbase リポジトリによって生成されたクエリ文字列を表示するにはどうすればよいですか? スプリングブーツを使用しています。このユースケースで @Query アノテーションを使用するのは正しいですか?
CouchbaseOperations
また、テンプレートで n1QL クエリを実行するにはどうすればよいですか? メソッドがあることは知って findByN1QL
いますが、それに関する適切なドキュメントは見つかりませんでした。誰かがこれを使用する方法を説明してもらえますか?