#java #android #couchbase
#java #Android #couchbase
Вопрос:
У меня есть вложенный JSON следующим образом, который я хочу сохранить и извлечь из couchbase lite в Android
{
"sensor":"12" ,
"patient":"2",
"readings": {"5090":"100" ,
"5092":"100"}
}
Я хочу получить значение, соответствующее ключу 5090, из моей базы данных
Я могу получить весь документ в couchbase, используя retrievedDocument.GetProperties() как
{_rev=1-7881f65efdcd0c119b936d4d3a734d42, sensor=12, readings={5090=100, 5092=100}, patient=2, _id=6482cee3-4267-459e-8039-860dbb5d1318}
Я также могу получить вложенный json, соответствующий ключу «readings», с помощью
retrievedDocument.getProperty(«readings») как
{5090=100, 5092=100}
теперь мне нужно получить значение (100), соответствующее вложенному ключу 5090 (внутри показаний)
Я попытался следовать в Java
retrievedDocument.getProperty("readings['5090']")
retrievedDocument.getProperty("readings["5090"]")
retrievedDocument.getProperty("readings.5090")
retrievedDocument.getProperty("readings[5090]")
но все они возвращают null
Ответ №1:
Попробуйте
retrievedDocument.getProperty("readings").getProperty("5090");
Ответ №2:
Теперь я решил свою проблему, используя следующее:
((Map) retrievedDocument.getProperty("readings")).get("5090"))