Spec-Zone.ru › RethinkDB java

Команда ReQL: binary

Синтаксис команды

r.binary(data) → binary

Описание

Инкапсулирует двоичные данные в запросе.

Тип данных binary зависит от языка клиента. В Java ожидается параметр типа byte[] (или запросы ReQL, возвращающие двоичные данные).

Двоичные объекты, возвращаемые клиенту в Java, также будут типами byte[]. Это можно изменить с помощью binary_format optArg, предоставляемого run, для возвращения «сырых» объектов.

Только ограниченный подмножество команд ReQL может быть прикреплено после binary:

  • coerceTo может преобразовывать объекты binary в типы string
  • count вернет количество байтов в объекте
  • slice будет рассматривать байты как индексы массива (т.е., slice(10,20) вернёт байты с 10-го по 19-й)
  • typeOf возвращает PTYPE<BINARY>
  • info вернёт информацию о двоичном объекте.

Пример: Сохранение изображения аватара в существующую запись пользователя.

import java.nio.file.*;

Path path = Paths.get("./defaultAvatar.png");
byte[] avatarImage = Files.readAllBytes(path);
r.table("users").get(100).update(r.hashMap("avatar", avatarImage));

Пример: Получение размера существующего изображения аватара.

r.table("users").get(100)("avatar").count().run(conn);

// Result:
14156

Подробнее о поддержке двоичных объектов RethinkDB: Хранение двоичных объектов.

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/java/binary/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API