Команда ReQL: connection
Синтаксис команды
r.connection() → Connection.Builder
Описание
Создает новое подключение к серверу базы данных. connection возвращает объект-билдер со следующими методами:
-
hostname(String): хост для подключения (по умолчаниюlocalhost). -
port(Integer): порт для подключения (по умолчанию28015). -
db(String): базу данных по умолчанию (по умолчаниюtest). -
user(String, String): учетную запись пользователя и пароль для подключения (по умолчанию"admin", ""). -
authKey(String): ключ аутентификации для подключения (по умолчаниюnull). -
sslContext(SSLContext): экземпляр класса SSLContext для использования в SSL-соединениях. -
certFile(InputStream): поток InputStream, который будет прочитан и преобразован в SSLContext. -
timeout(Long): временной интервал таймаута в секундах для открытия подключения (по умолчаниюnull). -
socketFactory(ConnectionSocket.Factory): фабрика для переопределения сокета соединения по умолчанию (по умолчаниюnull, использует фабрику по умолчанию). -
pumpFactory(ResponsePump.Factory): фабрика для переопределения насоса ответов по умолчанию (по умолчаниюnull, использует фабрику по умолчанию). -
unwrapLists(boolean): если включено, будет распаковывать ответы atom, которые являются списками, для удобства (по умолчаниюfalse). -
defaultFetchMode(Result.FetchMode): переопределяет режим получения подключения относительно частичных последовательностей (по умолчаниюResult.FetchMode.LAZY).
Для создания SSL-соединения с сервером RethinkDB необходимо указать либо certFile, либо sslContext. Используйте только один из них.
Если подключение не может быть установлено, будет выброшено исключение ReqlDriverError.
Использование SSL с RethinkDB требует программного обеспечения прокси на сервере, например, Nginx, HAProxy или SSL-туннель. RethinkDB будет шифровать трафик и проверять сертификат CA, чтобы предотвратить атаки типа «человек посередине». Подробности см. в документации вашего прокси.
В качестве альтернативы вы можете использовать встроенную поддержку TLS от RethinkDB здесь.
Пример: Открытие подключения с использованием хоста и порта по умолчанию, указание базы данных по умолчанию.
Connection conn = r.connection().connect();
Пример: Открытие нового подключения, указание параметров.
Connection conn = r.connection()
.hostname("localhost")
.port(28015)
.dbname("marvel")
.connect();
Пример: Открытие нового подключения, указание комбинации имени пользователя/пароля для аутентификации.
Connection conn = r.connection()
.hostname("localhost")
.port(28015)
.dbname("marvel")
.user("herofinder", "metropolis")
.connect();
Пример: Открытие нового подключения к базе данных с использованием SSL-прокси.
Connection conn = r.connection()
.hostname("localhost")
.port(28015)
.dbname("marvel")
.authKey("hunter2")
.certFile("/path/to/ca.crt")
.connect();
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/java/connect/