springboot redis lua脚本 decrby
时间: 2023-11-11 13:52:29 浏览: 45
在Spring Boot中,可以使用Redis的Lua脚本来执行decrby操作。首先,需要在Spring Boot的配置文件中配置RedisTemplate或StringRedisTemplate。然后,可以使用StringRedisTemplate的execute方法来执行Lua脚本。
下面是一个示例代码:
```
@Autowired
private StringRedisTemplate stringRedisTemplate;
public Long decrementBy(String key, long decrement) {
String script = "return redis.call('decrby', KEYS[1], ARGV[1])";
RedisScript<Long> redisScript = new DefaultRedisScript<>(script, Long.class);
List<String> keys = Collections.singletonList(key);
return stringRedisTemplate.execute(redisScript, keys, decrement);
}
```
在这个示例中,我们定义了一个decrementBy方法,接受一个key和一个decrement参数。然后,我们定义了一个Lua脚本,使用redis.call方法调用Redis的decrby命令,并返回结果。最后,我们使用StringRedisTemplate的execute方法执行Lua脚本,传递key、decrement和Lua脚本对象作为参数,并返回结果。