From 1a34a2dc75ceca3e3c1d379c97fe01a0df076e23 Mon Sep 17 00:00:00 2001 From: RenKaiGe-Office Date: Mon, 21 May 2018 10:21:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E8=8E=B7=E5=8F=96id=E7=9A=84?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../restful/ConfigSourcesController.java | 8 ++-- .../service/restful/ConfigRedisService.java | 7 ++++ .../restful/ConfigRedisServiceimpl.java | 38 +++++++++++++------ 3 files changed, 39 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/nis/web/controller/restful/ConfigSourcesController.java b/src/main/java/com/nis/web/controller/restful/ConfigSourcesController.java index 7a01598..a4bd2a1 100644 --- a/src/main/java/com/nis/web/controller/restful/ConfigSourcesController.java +++ b/src/main/java/com/nis/web/controller/restful/ConfigSourcesController.java @@ -56,16 +56,18 @@ public class ConfigSourcesController extends BaseRestController { @RequestMapping(value = "/save", method = RequestMethod.GET) @ApiOperation(value = "test redis", httpMethod = "GET", response = Map.class, notes = "测试redis事务的crontroller") @ApiParam(value = "test redis", name = "测试redis事务的crontroller", required = true) - public String testRedis(String id) { + public String testRedis() { try { Map map = new HashMap(); - map.put("cfg_id", id); + + long id=configRedisServiceimpl.getIncrId("seq_compileid"); + map.put("cfg_id", id+""); map.put("is_valid", "1"); map.put("dst_file", "/home/1234/"); map.put("dst_file_md5", "fasdfdasfsdafdsafadsf"); map.put("time_stamp", new Date().getTime() + ""); map.put("level", "20"); - map.put("file_id",id); + map.put("file_id",id+""); configRedisServiceimpl.saveConfigYSPDemoCompile(96,map); return "ok"; } catch (Exception e) { diff --git a/src/main/java/com/nis/web/service/restful/ConfigRedisService.java b/src/main/java/com/nis/web/service/restful/ConfigRedisService.java index 89e8c84..df4dec1 100644 --- a/src/main/java/com/nis/web/service/restful/ConfigRedisService.java +++ b/src/main/java/com/nis/web/service/restful/ConfigRedisService.java @@ -13,4 +13,11 @@ import java.util.Map; */ public interface ConfigRedisService { public void saveConfigYSPDemoCompile(int service, Map map); + + /** + * 获取指定key的自增长值 + * @param key 需要自增的key + * @return + */ + public Long getIncrId(String key); } diff --git a/src/main/java/com/nis/web/service/restful/ConfigRedisServiceimpl.java b/src/main/java/com/nis/web/service/restful/ConfigRedisServiceimpl.java index 42f3aed..23e4b85 100644 --- a/src/main/java/com/nis/web/service/restful/ConfigRedisServiceimpl.java +++ b/src/main/java/com/nis/web/service/restful/ConfigRedisServiceimpl.java @@ -2,7 +2,9 @@ package com.nis.web.service.restful; import java.util.List; import java.util.Map; +import java.util.concurrent.TimeUnit; +import org.springframework.data.redis.support.atomic.RedisAtomicLong; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; @@ -34,7 +36,6 @@ public class ConfigRedisServiceimpl extends BaseRedisDao impleme } } StringBuffer valBF = new StringBuffer(); - //valBF.append("\""); String[] valSplit = maatXmlExpr.getValueExpression().split(";"); for (String valStr : valSplit) { if (!StringUtils.isEmpty(valStr) && valStr.trim().startsWith("[")) { @@ -46,13 +47,15 @@ public class ConfigRedisServiceimpl extends BaseRedisDao impleme valBF.append(valStr.trim()); } } - //valBF.append("\""); - DynamicJedisDataBase.setRedisDataBase(maatXmlExpr.getRedisDB(), redisTemplate); - // redisTemplate.boundValueOps(keyBF.toString()).append(valBF.toString()); - System.out.println(keyBF.toString()); - System.out.println(valBF.toString()); - redisTemplate.opsForValue().set(keyBF.toString(), valBF.toString()); - //redisTemplate.boundValueOps(keyBF.toString()).set(valBF.toString()); + + // DynamicJedisDataBase.setRedisDataBase(maatXmlExpr.getRedisDB(), + // redisTemplate); + // System.out.println(keyBF.toString()); + // System.out.println(valBF.toString()); + //redisTemplate.boundValueOps(keyBF.toString()). + + redisTemplate.opsForValue().set(keyBF.toString(), valBF.toString()); + // redisTemplate.boundValueOps(keyBF.toString()).set(valBF.toString()); } List seqList = maatXmlConfig.getSequenceList(); @@ -67,12 +70,10 @@ public class ConfigRedisServiceimpl extends BaseRedisDao impleme } } } - + public static void main(String[] args) { System.out.println("\\t"); } - - public void test() { @@ -100,4 +101,19 @@ public class ConfigRedisServiceimpl extends BaseRedisDao impleme } } + @Override + public Long getIncrId(String key) { + DynamicJedisDataBase.setRedisDataBase(2, redisTemplate); + // RedisAtomicLong atomicLong = new RedisAtomicLong(key, + // redisTemplate.getConnectionFactory()); + // + // Long id = atomicLong.getAndIncrement() + 1; + // if ((id == null || id.longValue() == 0) && liveTime > 0) { + // atomicLong.expire(liveTime, TimeUnit.SECONDS); + // } + // return id; + + return redisTemplate.boundValueOps(key).increment(1l); + } + }