2017-09-25 23 views
0

傢伙。我一直在努力與奇怪的東西。我想獲得Elasticsearch查詢結果,數據(內部源)。所以這是我的代碼的一部分。彈性搜索使用jest api的結果有雙引號(「價值」),但我想只有價值肯定

SearchResult result = jestClient.execute(search); 
    JsonObject json = result.getJsonObject(); 
    Map<String, String> map = new HashMap<>(); 


    for (JsonElement jsonElement : json.getAsJsonObject("hits").getAsJsonArray("hits")) { 
     JsonObject _source = jsonElement.getAsJsonObject().get("_source").getAsJsonObject(); 
     String orderNumber = _source.get("orderNumber").toString(); 
     String equipmentCode = _source.get("equipmentCode").toString(); 
     map.put(orderNumber, equipmentCode); 
    } 

事情是orderNumber"ABCDE"。我期望的是ABCDE。 (爲了說清楚,兩個字符串都包含帶雙值的雙引號......調試模式中顯示了有趣的事情

我剛剛檢查了_source中的值,它具有字符串的第一個值"A"還是......但ORDERNUMBER的第一個值是""",第二個值是「A」 ......我不知道如何解決這個任何人都幫我?

回答

0

我回答爲自己和PPL誰會有同樣的問題,我應該使用getAsString()而不是toString() ...希望我節省了您的時間