JRediSearch 是 RediSearch 的一个 Java 客户端库。
JRediSearch 包含一个抽象化 RediSearch Redis 模块的 API 的 Java 库,并在 Redis 内部实现了强大的 in- memory 搜索引擎。
示例代码
初始化客户端
import io.redisearch.client.Client; import io.redisearch.Document; import io.redisearch.SearchResult; import io.redisearch.Query; import io.redisearch.Schema; ... Client client = new Client("testung", "localhost", 6379);
为索引定义并创建一个 schema
Schema sc = new Schema() .addTextField("title", 5.0) .addTextField("body", 1.0) .addNumericField("price"); client.createIndex(sc, Client.IndexOptions.Default());
为索引添加文档
Map<String, Object> fields = new HashMap<>(); fields.put("title", "hello world"); fields.put("body", "lorem ipsum"); fields.put("price", 1337); client.addDocument("doc1", fields);
查找索引
// Creating a complex query Query q = new Query("hello world") .addFilter(new Query.NumericFilter("price", 0, 1000)) .limit(0,5); // actual search SearchResult res = client.search(q);