如何使用 marklogic java api 编写 cts 查询
How to write cts query using marklogic java api
我想 运行 使用 MarkLogic Java API
下面的查询
cts:search(fn:doc(), cts:and-query((cts:collection-query("/abc/xyz"),
cts:collection-query("/abc/xyz/pqr"))))
您需要使用结构化查询,而不是 cts:query。它们在表现力上非常相似。 Java 客户端 API 包括用于结构化查询的构建器 class,com.marklogic.client.query.StructuredQueryBuilder。
详情请看以下内容:
使用 StructuredQueryBuilder, the and()
and collection()
方法构建等效的结构化查询来搜索两个集合中的文档。
// create the client -- this will change slightly in Java Client API 4.x
DatabaseClient client =
DatabaseClientFactory.newClient(host, port, user, password, authType);
// create a manager for searching
QueryManager queryMgr = client.newQueryManager();
// create a query builder
StructuredQueryBuilder qb = new StructuredQueryBuilder();
// build a search definition
StructuredQueryDefinition query =
qb.and(
qb.collection("/abc/xyz"),
qb.collection("/abc/xyz/pqr"));
// run the search
queryMgr.search(query, resultsHandle);
我想 运行 使用 MarkLogic Java API
下面的查询cts:search(fn:doc(), cts:and-query((cts:collection-query("/abc/xyz"),
cts:collection-query("/abc/xyz/pqr"))))
您需要使用结构化查询,而不是 cts:query。它们在表现力上非常相似。 Java 客户端 API 包括用于结构化查询的构建器 class,com.marklogic.client.query.StructuredQueryBuilder。
详情请看以下内容:
使用 StructuredQueryBuilder, the and()
and collection()
方法构建等效的结构化查询来搜索两个集合中的文档。
// create the client -- this will change slightly in Java Client API 4.x
DatabaseClient client =
DatabaseClientFactory.newClient(host, port, user, password, authType);
// create a manager for searching
QueryManager queryMgr = client.newQueryManager();
// create a query builder
StructuredQueryBuilder qb = new StructuredQueryBuilder();
// build a search definition
StructuredQueryDefinition query =
qb.and(
qb.collection("/abc/xyz"),
qb.collection("/abc/xyz/pqr"));
// run the search
queryMgr.search(query, resultsHandle);