Изменить значение JSON в массиве [RethinkDB]

308
01 марта 2017, 19:55

В RethinkDB есть строка формата:

{
'name': 'Hilgert',
'info': [
        {
            'a': 123123
            'b': 123124
        },
        {
            'a': 123135
            'b': 123136
        },
        {
            'a': 12364
            'b': -1
        }
    ]
}

Требуется найти Объект в массиве info, у которого b равен -1, и изменить его на нужное значение. Как это сделать?

Библиотека - Официальная, с сайта RethinkDB.

Answer 1

Готовое решение, может понадобится кому.

Cursor<HashMap<String, Object>> s = r.table("plays").filter(row -> 
row.g("name").eq(elem.getPlayer().getName())).run(conn);
HashMap<String, Object> field = s.next();
ArrayList<HashMap<String, Object>> infoList = (ArrayList<HashMap<String, 
Object>>) field.get("info");
for (HashMap<String, Object> info : infoList) {
    if (Integer.parseInt(info.get("quit").toString()) != -1) continue;
    info.put("quit", Utils.getUNIX());
}
r.table("plays").filter(row -> 
row.g("name").eq(elem.getPlayer().getName())).update(r.hashMap("info", field)).run(conn);
READ ALSO
Не могу удалить маркер

Не могу удалить маркер

Добавил в InfoWindow кнопку, но при нажатии ничего не происходит

379
Когда имеет смысл наследоваться от Thread в Java?

Когда имеет смысл наследоваться от Thread в Java?

Читая статью о многопоточности в Java, я наткнулся на следующие строки:

227
Как использовать native packing inno setup 5 в NetBeans

Как использовать native packing inno setup 5 в NetBeans

Здравствуйте, нахожусь в небольшом недоуменииЕсть утилита, Inno Setup 5 Script, для того что бы запаковывать проекты в exe, очень хорошая штука(https://netbeans

294
Безопасное хранение ключей шифрования

Безопасное хранение ключей шифрования

Существует ли в Java под android возможность хранить ключи шифрования безопасным образом, например защищенными паролем?

296