redisTemplate.opsForValue()中方法讲解 您所在的位置:网站首页 redis模板方法怎么使用 redisTemplate.opsForValue()中方法讲解

redisTemplate.opsForValue()中方法讲解

2024-06-03 13:13| 来源: 网络整理| 查看: 265

查看源码可以看到redisTemplate.opsForValue()中的方法都定义在ValueOperations 中,该接口中一共有17个方法:

public interface ValueOperations { void set(K key, V value); void set(K key, V value, long timeout, TimeUnit unit); Boolean setIfAbsent(K key, V value); void multiSet(Map map); Boolean multiSetIfAbsent(Map map); V get(Object key); V getAndSet(K key, V value); List multiGet(Collection keys); Long increment(K key, long delta); Double increment(K key, double delta); Integer append(K key, String value); String get(K key, long start, long end); void set(K key, V value, long offset); Long size(K key); Boolean setBit(K key, long offset, boolean value); Boolean getBit(K key, long offset); RedisOperations getOperations(); }

下面我们一个一个来讲解

void set(K key, V value)

方法含义:新增一个字符串类型的值,key是键,value是值

使用方法:

redisTemplate.opsForValue().set("stringkey", "stringvalue");

void set(K key, V value, l ong timeout, TimeUnit unit)

方法含义:新增一个字符串类型的值,并且设置变量值的过期时间。key是键,value是值,timeout 过期时间,unit 过期时间单位。

unit 过期时间单位取值如下:

DAYS:天时间单元代表24小时 HOURS:小时时间单元代表60分钟 MICROSECONDS:微秒时间单元代表千分之一毫秒 MILLISECONDS:毫秒时间单元代表千分之一秒 MINUTES:分钟时间单元代表60秒 NANOSECONDS:纳秒时间单元代表千分之一微秒 SECONDS:时间单元代表1秒

使用方法,把timeoutkey对应的值设置过期时间为10秒:

redisTemplate.opsForValue().set("timeoutkey", "timeoutvalue", 10, TimeUnit.SECONDS);

Boolean setIfAbsent(K key, V value)

方法含义:如果键不存在则新增,存在则不改变已经有的值。

使用方法:

redisTemplate.opsForValue().setIfAbsent("newkey", "newvalue");

V get(Object key)

方法含义:获取key键对应的值

使用方法:

redisTemplate.opsForValue().get("stringkey");

String get(K key, long start, long end)

方法含义:截取key键对应值的字符串,从开始下标位置开始到结束下标的位置(包含结束下标)的字符串。下标从1开始,如果stringkey对应的值为value,那么下面这个方法返回为:al

使用方法:

redisTemplate.opsForValue().get("stringkey", 2, 3);

V getAndSet(K key, V value)

方法含义:获取原来key键对应的值并重新赋新值

使用方法:

redisTemplate.opsForValue().getAndSet("stringkey", "newvalue");

void set(K key, V value, long offset)

方法含义:覆盖从指定位置开始的值

使用方法:

redisTemplate.opsForValue().set("stringkey", "a", 1);

如下三个方法放在一起讲:

void multiSet(Map



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有