redis
Как подключиться к Redis в Java с помощью Jedis
Поиск…
Вступление
Существует более десяти различных клиентских библиотек для использования с Redis в Java. Одним из самых популярных клиентов является Jedis .
замечания
Дальнейшая информация:
Получение Jedis
Библиотека Jedis обычно добавляется в проект Java, используя систему управления зависимостями, встроенную в среду сборки проекта. Двумя популярными системами построения Java являются Maven и Gradle.
Использование Gradle
Чтобы добавить библиотеку Jedis в проект Gradle, вам потребуется настроить репозиторий и добавить зависимость. Следующий фрагмент показывает, как добавить версию 2.9.0 библиотеки Jedis в проект Gradle.
repositories {
mavenCentral()
}
dependencies {
compile 'redis.clients:jedis:2.9.0'
}
Использование Maven
Чтобы добавить Jedis в проект Maven, вам нужно добавить зависимость в список зависимостей и предоставить координаты библиотеки. Следующий фрагмент будет добавлен в ваш файл pom.xml:
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
Подключение к Redis
Использование пула
Большинство кода захотят подключиться к Redis, используя пул общих объектов подключения. Подключение к Redis с использованием пула включает в себя два разных блока кода. Во время инициализации вашему приложению необходимо создать пул соединений:
JedisPoolConfig poolCfg = new JedisPoolConfig();
poolCfg.setMaxTotal(3);
pool = new JedisPool(poolCfg, hostname, port, 500, password, false);
JedisPoolConfig
предоставляет опции для настройки пула.
Поскольку ваше приложение обрабатывает рабочую нагрузку, вам нужно будет получить соединение из общего пула, используя следующий код:
try (Jedis jedis = pool.getResource()) {
...
}
Лучшей практикой является получение объекта соединения Jedis
из пула в блоке try-with-resources.
Без бассейнов
В некоторых случаях, таких как простое приложение или тест интеграции, вы можете не иметь дело с общими пулами и вместо этого напрямую создавать объект соединения Jedis
. Это можно сделать с помощью следующего кода:
try (Jedis jedis = new Jedis(hostname, port)) {
jedis.connect();
jedis.auth(password);
jedis.select(db);
. . .
}
Опять же, лучшей практикой является создание объекта клиента Jedis в блоке try-with-resources.
Выполнение базовых команд Get / Set
Как только вы установили соединение с Redis, вы можете получить и установить значения с помощью объекта соединения Jedis
:
Получить
String value = jedis.get(myKey);
Задавать
jedis.put(myKey, "some value");
Выполнение команд
Чтобы выполнить команду Redis с помощью Jedis, вы вызываете вызовы методов против объекта Jedis
, созданного вами из пула. Jedis выдает команды Redis как вызовы методов, например:
- String get(String key)
- Long geoadd(String key, double longitude, double latitude, String member)
- List<String> hmget(String key, String... fields)
- Long hsetnx(String key, String field, String value)
Если вы хотите установить значение String в Redis, вы будете использовать блок кода, подобный:
try (Jedis jedis = pool.getResource()) {
String myKey = "users:20";
String myValue = "active";
jedis.set(myKey, myValue);
}