| | |
| | | import com.baomidou.lock.annotation.Lock4j; |
| | | import com.baomidou.lock.executor.RedissonLockExecutor; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.v3.oas.annotations.Operation; |
| | | import io.swagger.v3.oas.annotations.tags.Tag; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | |
| | | * |
| | | * @author shenxinquan |
| | | */ |
| | | @Api(value = "测试分布式锁的样例", tags = {"测试分布式锁的样例"}) |
| | | @Tag(name ="测试分布式锁的样例", description = "测试分布式锁的样例") |
| | | @Slf4j |
| | | @RestController |
| | | @RequestMapping("/demo/redisLock") |
| | |
| | | /** |
| | | * 测试lock4j 注解 |
| | | */ |
| | | @ApiOperation("测试lock4j 注解") |
| | | @Operation(summary = "测试lock4j 注解") |
| | | @Lock4j(keys = {"#key"}) |
| | | @GetMapping("/testLock4j") |
| | | public R<String> testLock4j(String key, String value) { |
| | |
| | | /** |
| | | * 测试lock4j 工具 |
| | | */ |
| | | @ApiOperation("测试lock4j 工具") |
| | | @Operation(summary = "测试lock4j 工具") |
| | | @GetMapping("/testLock4jLockTemplate") |
| | | public R<String> testLock4jLockTemplate(String key, String value) { |
| | | final LockInfo lockInfo = lockTemplate.lock(key, 30000L, 5000L, RedissonLockExecutor.class); |