簡體   English   中英

Cloudant客戶端數據庫-startKey和endKey-Java

[英]Cloudant Client Database - startKey and endKey - Java

僅出於上下文考慮,我正在編寫一個代碼,該代碼連接到Cloudant數據庫,並檢索存儲在數據庫中的某些憑證,這些憑證采用Json格式(正如您期望的那樣)。

我編寫了允許我連接到數據庫的代碼:

public ClientBuilder getCloudantClient(String username, String password) {
        ClientBuilder clientBuilder = ClientBuilder.account(username).
                username(username).password(password);
        return clientBuilder;
    }

然后返回數據庫:

CloudantClient cloudantClient = cloudantRestClient.getCloudantClient(USERNAME, PASSWORD).build();
Database database = cloudantClient.database(DATABASE, false);

現在,我正在嘗試從該數據庫中檢索某些憑據,例如某個ID(僅一行),例如:

"id" : "Aberffrawcake"

對於我所看到的這個示例 ,我想指定startKey和endKey(在本例中為“ id”),理想情況下,返回“ Aberffrawcake”。

考慮到上面的示例,我有兩個主要問題:

  1. .startKey(“ id”)。endKey(“ id”)參數實際上返回什么? 根據這個 ,他們回到了起點和終點的記錄與指定的鍵(但我不清楚這是什么意思)。 它是Json結構嗎? 它是常規字符串嗎? 有人可以給我一個例子,如果給定了指定的開始和結束鍵,返回的結果是什么?
  2. 我正在Eclipse中編寫Junit測試,當我提供.startKey(“ id”)。endKey(“ id”)參數時,該測試為我提供了空指針異常。 我該如何嘲笑(與Mochito一起使用)? 如果問題1對我很清楚,那么我可以通過讓它們返回我期望的值來模擬startKey()。endKey()(但是由於我不知道它們實際返回的內容,所以我無法做這個)。

我們將不勝感激,如果我的問題不清楚,請指出。

我想指定startKey和endKey(在本例中為“ id”),理想情況下,返回“ Aberffrawcake”。

startKeyendKey是您要過濾的的范圍,因此在您的情況下為“ Aberffrawcake”而不是“ id”。 對於唯一值, key會更合適。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM