From 0f9a0a76b170bceac867dd5cd009e518ac6646e4 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期三, 20 十一月 2019 11:04:07 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/manager/util/AtomMethodCallManager.java | 41 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 41 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/manager/util/AtomMethodCallManager.java b/fanli/src/main/java/com/yeshi/fanli/manager/util/AtomMethodCallManager.java new file mode 100644 index 0000000..eaf3e93 --- /dev/null +++ b/fanli/src/main/java/com/yeshi/fanli/manager/util/AtomMethodCallManager.java @@ -0,0 +1,41 @@ +package com.yeshi.fanli.manager.util; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Component; + +import com.yeshi.fanli.util.StringUtil; + +import redis.clients.jedis.Jedis; +import redis.clients.jedis.JedisPool; +import redis.clients.jedis.params.SetParams; + +@Component +public class AtomMethodCallManager { + + @Resource + private JedisPool jedisPool; + + /** + * 浜嬩欢鎵ц + * + * @param key + * 浜嬩欢鍞竴鏍囪瘑锛岃涓庡叿浣撶殑涓氬姟閫昏緫鐩哥粨鍚� + * @param call + */ + public void excute(String key, AtomMethodCallInterface call) { + String redisKey = "atom-" + StringUtil.Md5(key); + Jedis jedis = jedisPool.getResource(); + try { + if (StringUtil.isNullOrEmpty(jedis.set(redisKey, "1", new SetParams().nx().ex(60)))) { + System.out.println("璇风◢鍚庡啀璇�"); + return; + } + call.excute(); + } finally { + jedis.del(redisKey); + jedis.close(); + } + } + +} -- Gitblit v1.8.0