package com.tj.qc.service.config.impl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 锁 * * @author zyl * @date 2021/11/24 */ @Component public class RedisLock { // @Autowired // private Redistemplate<String, String> redistemplate; @Autowired private com.tj.common.redis.simple.RedisSimpleClient redisClient; public void lock(String key, Runnable runnable){ try{ if(lock(key)) { runnable.run(); } }finally { unlock(key); } } private boolean lock(String key){ if(!redisClient.exists("RLock:"+key)) { redisClient.setStr("RLock:"+key, "1"); return true; } return false; } private void unlock(String key){ redisClient.del("RLock:"+key); } }
@Autowired private RedisLock redisLock; /** * 创建时间格式排查 * */ @RequestMapping(value = "/test", method = RequestMethod.GET) @ResponseBody public String checkCreateTime(){ redisLock.lock("lockWW", ()-> { System.err.println(); }); return nn; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。