在Jedis中,我希望通过一次调用来设置一些键和值,并具有过期时间。
我可以通过set()和expire()的组合来实现这一点,但需要两个调用。
我发现以下方法:
set(final String key, final String value, final String nxxx, final String expx, final long time)
但我必须选择nx(仅在键不存在时设置键)或xx(仅在键已存在时设置键)。
我想涵盖这两种情况。
有任何建议吗?或是有任何原因写成这样?
我可以通过set()和expire()的组合来实现这一点,但需要两个调用。
我发现以下方法:
set(final String key, final String value, final String nxxx, final String expx, final long time)
但我必须选择nx(仅在键不存在时设置键)或xx(仅在键已存在时设置键)。
我想涵盖这两种情况。
有任何建议吗?或是有任何原因写成这样?
SETEX
文档中的说明,@LoveToCode: 因此,可以使用以下Jedis代码:final String key = "foo"; final Transaction t = jedis.multi(); t.set(key, "bar"); // 设置键和值 t.expire(key, 10); // 将其设置为在10秒后过期 t.exec();
但是,如果删除SETEX
,我想Jedis会在幕后进行更改。 - 3ygun