本文整理了Java中redis.clients.jedis.Jedis.mget()
方法的一些代码示例,展示了Jedis.mget()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Jedis.mget()
方法的具体详情如下:
包路径:redis.clients.jedis.Jedis
类名称:Jedis
方法名:mget
[英]Get the values of all the specified keys. If one or more keys don't exist or is not of type String, a 'nil' value is returned instead of the value of the specified key, but the operation never fails.
Time complexity: O(1) for every key
[中]获取所有指定键的值。如果一个或多个键不存在或不是String类型,则返回一个“nil”值,而不是指定键的值,但操作从未失败。
时间复杂度:每个密钥为O(1)
代码示例来源:origin: sohutv/cachecloud
@Override
public List<byte[]> execute(Jedis connection) {
return connection.mget(keys);
}
}.runBinary(keys.length, keys);
代码示例来源:origin: sohutv/cachecloud
@Override
public List<String> execute(Jedis connection) {
return connection.mget(keys);
}
}.run(keys.length, keys);
代码示例来源:origin: apache/incubator-druid
@Override
public Map<NamedKey, byte[]> getBulk(Iterable<NamedKey> keys)
{
totalRequestCount.incrementAndGet();
Map<NamedKey, byte[]> results = new HashMap<>();
try (Jedis jedis = pool.getResource()) {
List<NamedKey> namedKeys = Lists.newArrayList(keys);
List<byte[]> byteKeys = Lists.transform(namedKeys, NamedKey::toByteArray);
List<byte[]> byteValues = jedis.mget(byteKeys.toArray(new byte[0][]));
for (int i = 0; i < byteValues.size(); ++i) {
if (byteValues.get(i) != null) {
results.put(namedKeys.get(i), byteValues.get(i));
}
}
hitCount.addAndGet(results.size());
missCount.addAndGet(namedKeys.size() - results.size());
}
catch (JedisException e) {
if (e.getMessage().contains("Read timed out")) {
timeoutCount.incrementAndGet();
} else {
errorCount.incrementAndGet();
}
log.warn(e, "Exception pulling items from cache");
}
return results;
}
代码示例来源:origin: apache/storm
/**
* {@inheritDoc}
*/
@Override
protected List<String> retrieveValuesFromRedis(RedisState state, List<String> keys) {
Jedis jedis = null;
try {
jedis = state.getJedis();
List<String> redisVals;
String[] keysForRedis = keys.toArray(new String[keys.size()]);
switch (dataType) {
case STRING:
redisVals = jedis.mget(keysForRedis);
break;
case HASH:
redisVals = jedis.hmget(additionalKey, keysForRedis);
break;
default:
throw new IllegalArgumentException("Cannot process such data type: " + dataType);
}
return redisVals;
} finally {
if (jedis != null) {
state.returnJedis(jedis);
}
}
}
}
代码示例来源:origin: apache/storm
/**
* {@inheritDoc}
*/
@Override
protected List<String> retrieveValuesFromRedis(List<String> keys) {
String[] stringKeys = keys.toArray(new String[keys.size()]);
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
RedisDataTypeDescription description = this.options.dataTypeDescription;
switch (description.getDataType()) {
case STRING:
return jedis.mget(stringKeys);
case HASH:
return jedis.hmget(description.getAdditionalKey(), stringKeys);
default:
throw new IllegalArgumentException("Cannot process such data type: " + description.getDataType());
}
} finally {
if (jedis != null) {
jedis.close();
}
}
}
代码示例来源:origin: alibaba/jetcache
List mgetResults = jedis.mget(newKeys);
for (int i = 0; i < mgetResults.size(); i++) {
Object value = mgetResults.get(i);
代码示例来源:origin: jfinal/jfinal
/**
* 返回所有(一个或多个)给定 key 的值。
* 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。因此,该命令永不失败。
*/
@SuppressWarnings("rawtypes")
public List mget(Object... keys) {
Jedis jedis = getJedis();
try {
byte[][] keysBytesArray = keysToBytesArray(keys);
List<byte[]> data = jedis.mget(keysBytesArray);
return valueListFromBytesList(data);
}
finally {close(jedis);}
}
代码示例来源:origin: apache/ignite
/**
* @throws Exception If failed.
*/
@Test
public void testMGet() throws Exception {
try (Jedis jedis = pool.getResource()) {
jcache().put("getKey1", "getVal1");
jcache().put("getKey2", 0);
List<String> res = jedis.mget("getKey1", "getKey2", "wrongKey");
Assert.assertTrue(res.contains("getVal1"));
Assert.assertTrue(res.contains("0"));
// not supported.
// fail("Incompatible! getAll() does not return null values!");
// Assert.assertTrue(result.contains("nil"));
}
}
代码示例来源:origin: spring-projects/spring-data-redis
@Override
public List<byte[]> mGet(byte[]... keys) {
Assert.notNull(keys, "Keys must not be null!");
Assert.noNullElements(keys, "Keys must not contain null elements!");
try {
if (isPipelined()) {
pipeline(connection.newJedisResult(connection.getRequiredPipeline().mget(keys)));
return null;
}
if (isQueueing()) {
transaction(connection.newJedisResult(connection.getRequiredTransaction().mget(keys)));
return null;
}
return connection.getJedis().mget(keys);
} catch (Exception ex) {
throw convertJedisAccessException(ex);
}
}
代码示例来源:origin: javahongxi/whatsmars
public List<String> mget(String... keys) {
Jedis jedis = fetchResource(true);
try {
return jedis.mget(keys);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
代码示例来源:origin: jwpttcg66/NettyGameServer
for(int i=0;i<page;i++){
tmp.addAll(PageUtils.getSubListPage(keys, i * GlobalConstants.RedisKeyConfig.MGET_MAX_KEY, GlobalConstants.RedisKeyConfig.MGET_MAX_KEY));
rt.addAll(jedis.mget(tmp.toArray(new String[0])));
tmp.clear();
rt = jedis.mget(keys2);
代码示例来源:origin: apache/servicemix-bundles
@Override
public List<String> execute(Jedis connection) {
return connection.mget(keys);
}
}.run(keys.length, keys);
代码示例来源:origin: io.leopard/leopard-redis
@Override
public List<String> mget(String... keys) {
return jedis.mget(keys);
}
代码示例来源:origin: io.leopard/leopard-redis
@Override
public Object execute(Jedis jedis) {
return jedis.mget(keys);
}
});
代码示例来源:origin: com.github.sogyf/goja-mvt
@Override
public List<String> action(Jedis jedis) {
return jedis.mget(keys);
}
});
代码示例来源:origin: tangyanbo/springmore
@Override
public List<String> action(Jedis jedis) {
return jedis.mget(keys);
}
});
代码示例来源:origin: biezhi/java-library-examples
public static void main(String[] args) {
try (Jedis jedis = JedisUtil.getInstance().getJedis()) {
jedis.rpush("ids", "aa");
jedis.rpush("ids", "bb");
jedis.rpush("ids", "cc");
List<String> ids = jedis.lrange("ids", 0, -1);
jedis.set("aa", "{'name':'zhoujie','age':20}");
jedis.set("bb", "{'name':'yilin','age':28}");
jedis.set("cc", "{'name':'lucy','age':21}");
List<String> list = jedis.mget(ids.toArray(new String[ids.size()]));
System.out.println(list);
}
}
代码示例来源:origin: org.nuxeo.ecm.core/nuxeo-core-redis
/**
* @since 9.10
*/
protected List<byte[]> getValuesForKeys(Collection<String> keys) {
byte[][] byteKeys = new byte[keys.size()][];
int i = 0;
for (String key : keys) {
byteKeys[i++] = getBytes(namespace + key);
}
RedisExecutor redisExecutor = Framework.getService(RedisExecutor.class);
return redisExecutor.execute(jedis -> jedis.mget(byteKeys));
}
代码示例来源:origin: com.github.yamingd.argo/argo-redis
public List<T> execute(final Jedis conn) throws Exception {
List<byte[]> bytes = conn.mget(SafeEncoder.encodeMany(keys));
return getRedisBuffer().read(bytes, clazz);
}
});
代码示例来源:origin: io.enoa/nosql-redis
default List<String> mget(String... keys) {
return this.run((jedis, serializer) ->
EnoaRedisConvert.with(serializer).convertList(jedis.mget(EnoaRedisConvert.with(serializer).toBytesKeys(keys))));
}
内容来源于网络,如有侵权,请联系作者删除!