Java Code Examples for io.lettuce.core.api.sync.RedisStringCommands
The following examples show how to use
io.lettuce.core.api.sync.RedisStringCommands. These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: jetcache Source File: RedisLettuceCache.java License: Apache License 2.0 | 6 votes |
public RedisLettuceCache(RedisLettuceCacheConfig<K, V> config) { super(config); this.config = config; this.valueEncoder = config.getValueEncoder(); this.valueDecoder = config.getValueDecoder(); if (config.getRedisClient() == null) { throw new CacheConfigException("RedisClient is required"); } if (config.isExpireAfterAccess()) { throw new CacheConfigException("expireAfterAccess is not supported"); } client = config.getRedisClient(); lettuceConnectionManager = LettuceConnectionManager.defaultManager(); lettuceConnectionManager.init(client, config.getConnection()); stringCommands = (RedisStringCommands<byte[], byte[]>) lettuceConnectionManager.commands(client); stringAsyncCommands = (RedisStringAsyncCommands<byte[], byte[]>) lettuceConnectionManager.asyncCommands(client); keyAsyncCommands = (RedisKeyAsyncCommands<byte[], byte[]>) stringAsyncCommands; }
Example 2
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
@Override public byte[] getBytes(String key) { try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); return cmd.get(_key(key)); } }
Example 3
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
@Override public List<byte[]> getBytes(Collection<String> keys) { try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); return cmd.mget(keys.stream().map(k -> _key(k)).toArray(String[]::new)).stream().map(kv -> kv.hasValue()?kv.getValue():null).collect(Collectors.toList()); } }
Example 4
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
@Override public void setBytes(String key, byte[] bytes) { try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); cmd.set(_key(key), bytes); } }
Example 5
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
@Override public void setBytes(Map<String, byte[]> bytes) { try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); cmd.mset(bytes.entrySet().stream().collect(Collectors.toMap(k -> _key(k.getKey()), Map.Entry::getValue))); } }
Example 6
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
/** * 设置缓存数据字节数组(带有效期) * @param key cache key * @param bytes cache data * @param timeToLiveInSeconds cache ttl */ @Override public void setBytes(String key, byte[] bytes, long timeToLiveInSeconds){ try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); if (timeToLiveInSeconds > 0) cmd.setex(_key(key), timeToLiveInSeconds, bytes); else cmd.set(_key(key), bytes); } }
Example 7
Source Project: J2Cache Source File: LettuceGenericCache.java License: Apache License 2.0 | 5 votes |
/** * 批量设置带 TTL 的缓存数据 * @param bytes cache data * @param timeToLiveInSeconds cache ttl */ @Override public void setBytes(Map<String,byte[]> bytes, long timeToLiveInSeconds) { try(StatefulConnection<String, byte[]> connection = super.connect()) { RedisStringCommands<String, byte[]> cmd = (RedisStringCommands)super.sync(connection); if (timeToLiveInSeconds > 0) bytes.forEach((k,v)->cmd.setex(_key(k), timeToLiveInSeconds, v)); else bytes.forEach((k,v)->cmd.set(_key(k), v)); } }