Redis的简单使用

  1. 添加依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
    <version>xxx</version>
</dependency>
  1. 配置yml,其中jedis是同步,lettuce是异步
spring:
  redis:
    host: 101.43.170.12
    port: 6379
    # 连接超时时间(毫秒)
    connect-timeout: 30000
    lettuce:
      pool:
        # 连接池最大阻塞等待时间(负数表示没有限制)
        max-wait: -1
        # 连接池最大连接数(负数表示没有限制)
        max-active: 8
        # 连接池中的最大空闲连接
        max-idle: 8
        # 连接池中的最小空闲连接
        min-idle: 0
  1. 基本使用方法
Redis中opsForValue()方法的使用介绍:

在使用之前要注入Bean
@Autowired
private StringRedisTemplate template;

1、set(K key, V value)
  新增一个字符串类型的值,key是键,value是值。
redisTemplate.opsForValue().set("key","value");  
2、get(Object key)
  获取key键对应的值。
redisTemplate.opsForValue().get("key")
3、append(K key, String value)
在原有的值基础上新增字符串到末尾。
redisTemplate.opsForValue().append("key", "appendValue");
4、get(K key, long start, long end)
截取key键对应值得字符串,从开始下标位置开始到结束下标的位置(包含结束下标)的字符串。
SredisTemplate.opsForValue().get("key", 0, 10);  
5、getAndSet(K key, V value)
  获取原来key键对应的值并重新赋新值。
redisTemplate.opsForValue().getAndSet("key", "newValue");  
6、setBit(K key, long offset, boolean value)
  key键对应的值value对应的ascii码,在offset的位置(从左向右数)变为value。
redisTemplate.opsForValue().setBit("key",1,false);  
7、getBit(K key, long offset)
  判断指定的位置ASCII码的bit位是否为1。
​​​​​​​8、size(K key)
  获取指定字符串的长度
redisTemplate.opsForValue().size("key");  
​​​​​​​9、increment(K key, double delta)
  以增量的方式将double值存储在变量中。(每次调用key对应的值+5)
redisTemplate.opsForValue().increment("doubleKey",5);   
10、increment(K key, long delta)
  以增量的方式将long值存储在变量中。(每次调用key对应的值+6)
  可以用来对用户每日某种行为的数量进行限制
redisTemplate.opsForValue().increment("longKey",6);   
​​​​​​​11、setIfAbsent(K key, V value)
  如果键不存在则新增,存在则不改变已经有的值。
redisTemplate.opsForValue().setIfAbsent("absentKey","fff");  
12、set(K key, V value, long timeout, TimeUnit unit)
  设置变量值的过期时间。
redisTemplate.opsForValue().set("timeOutKey", "timeOut", 5, TimeUnit.SECONDS);   
13、set(K key, V value, long offset)
  覆盖从指定位置开始的值。
redisTemplate.opsForValue().set("key","value",1);
14、multiSet(Map<? extends K,? extends V> map)
  设置map集合到redis。
Map valueMap = new HashMap();  
valueMap.put("valueMap1","map1");  
valueMap.put("valueMap2","map2");  
valueMap.put("valueMap3","map3");  
redisTemplate.opsForValue().multiSet(valueMap);  
15、multiGet(Collection<K> keys)
  根据集合取出对应的value值。
List paraList = new ArrayList();  
paraList.add("valueMap1");  
paraList.add("valueMap2");  
paraList.add("valueMap3");  
List<String> valueList = redisTemplate.opsForValue().multiGet(paraList);  
for (String value : valueList){  
    System.out.println("通过multiGet(Collection<K> keys)方法获取map值:" + value);  
}
16、multiSetIfAbsent(Map<? extends K,? extends V> map)
  如果对应的map集合名称不存在,则添加,如果存在则不做修改。
Map valueMap = new HashMap();  
valueMap.put("valueMap1","map1");  
valueMap.put("valueMap2","map2");  
valueMap.put("valueMap3","map3");  
redisTemplate.opsForValue().multiSetIfAbsent(valueMap); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值