RedisLockService.java 668 Bytes
package com.uccc.base.springboot.redisLock;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;

@Service
public class RedisLockService {
	@Autowired
	RedisTemplate<String, String> redis;

	@Value("${redislock_retry_millis}")
	int retryMillis = 200;

	public RedisLock getLock(int expireSeconds, int retrySeconds, String lockPrefix, String... keys) {
		RedisLock lock = new RedisLock(redis, expireSeconds, retrySeconds, lockPrefix, retryMillis, keys);
		return lock;
	}
}