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