From dddc80e7f6f65e0c9ccdf77cb87d6a9b847da495 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com>
Date: Thu, 12 Sep 2024 17:09:31 +0800
Subject: [PATCH] 'commit'
---
.idea/misc.xml | 2 +-
ds-base/Dockerfile | 5 +-
ds-base/pom.xml | 4 +-
.../com/dsideal/base/BaseApplication.java | 4 +-
.../Controller/LoginPersonController.java | 26 +--
.../java/com/dsideal/base/Util/PkUtil.java | 13 +-
.../java/com/dsideal/base/Util/RedisKit.java | 84 --------
.../java/com/dsideal/base/Util/RedisUtil.java | 194 ------------------
ds-build/src/main/java/build_ds_base.java | 1 -
ds-build/src/main/java/build_ds_gw.java | 1 -
10 files changed, 25 insertions(+), 309 deletions(-)
delete mode 100644 ds-base/src/main/java/com/dsideal/base/Util/RedisKit.java
delete mode 100644 ds-base/src/main/java/com/dsideal/base/Util/RedisUtil.java
diff --git a/.idea/misc.xml b/.idea/misc.xml
index a9fc6872..8078ecc0 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -21,5 +21,5 @@
-
+
\ No newline at end of file
diff --git a/ds-base/Dockerfile b/ds-base/Dockerfile
index 80c74b00..0310cfb7 100644
--- a/ds-base/Dockerfile
+++ b/ds-base/Dockerfile
@@ -1,7 +1,4 @@
-FROM alpine:latest
-RUN apk add --no-cache openjdk21
-ENV JAVA_HOME /usr/lib/jvm/java-21-openjdk
-ENV PATH $PATH:$JAVA_HOME/bin
+FROM openjdk:8u332-jre-slim-bullseye AS runner
# WORKDIR指令用于设置容器内部的工作目录,即后续指令执行时的当前目录。当Docker容器启动并执行命令时,这些命令将在WORKDIR指定的目录中执行。
WORKDIR /root
diff --git a/ds-base/pom.xml b/ds-base/pom.xml
index 048f0d60..9c5c3c8a 100644
--- a/ds-base/pom.xml
+++ b/ds-base/pom.xml
@@ -190,11 +190,11 @@
dom4j
2.1.4
-
+
redis.clients
jedis
- 5.1.0
+ 3.9.0
diff --git a/ds-base/src/main/java/com/dsideal/base/BaseApplication.java b/ds-base/src/main/java/com/dsideal/base/BaseApplication.java
index 9b623460..7b01f85d 100644
--- a/ds-base/src/main/java/com/dsideal/base/BaseApplication.java
+++ b/ds-base/src/main/java/com/dsideal/base/BaseApplication.java
@@ -28,7 +28,6 @@ import com.jfinal.plugin.druid.IDruidStatViewAuth;
import com.jfinal.plugin.redis.RedisPlugin;
import com.jfinal.server.undertow.UndertowServer;
import com.jfinal.template.Engine;
-
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
@@ -145,8 +144,7 @@ public class BaseApplication extends JFinalConfig {
//加载
me.add(arp);
// 用于缓存模块的redis服务
- RedisPlugin redis = new RedisPlugin("Redis", PropKit.get("redis_ip"), PropKit.getInt("redis_port"), 10 * 1000, PropKit.get("redis_password"));
- //启动redis组件
+ RedisPlugin redis = new RedisPlugin("myRedis", PropKit.get("redis_ip"), PropKit.getInt("redis_port"), 10 * 1000,PropKit.get("redis_password"));
me.add(redis);
}
diff --git a/ds-base/src/main/java/com/dsideal/base/LoginPerson/Controller/LoginPersonController.java b/ds-base/src/main/java/com/dsideal/base/LoginPerson/Controller/LoginPersonController.java
index e977a5c5..5126055e 100644
--- a/ds-base/src/main/java/com/dsideal/base/LoginPerson/Controller/LoginPersonController.java
+++ b/ds-base/src/main/java/com/dsideal/base/LoginPerson/Controller/LoginPersonController.java
@@ -52,8 +52,8 @@ public class LoginPersonController extends Controller {
String checkCodeKey = "Yzm_error_" + username;
int CheckCodeErrCnt = 4; //最多允许错几次 4+1
int CheckCodecntNum = 0; //错几次了
- if (RedisKit.Exists(checkCodeKey))
- CheckCodecntNum = Integer.parseInt(RedisKit.Get(checkCodeKey).toString());
+ if (Redis.use().exists(checkCodeKey))
+ CheckCodecntNum = Integer.parseInt(Redis.use().get(checkCodeKey).toString());
if (CheckCodecntNum > CheckCodeErrCnt) {
resultJson.put("success", false);
resultJson.put("msg", "账号已被停用5分钟,请稍后再试!");
@@ -62,10 +62,10 @@ public class LoginPersonController extends Controller {
}
if (!memory_captcha.equals(captcha.toLowerCase())) {
CheckCodecntNum = 1;
- if (RedisKit.Exists(checkCodeKey))
- CheckCodecntNum = Integer.parseInt(RedisKit.Get(checkCodeKey).toString()) + CheckCodecntNum;
- RedisKit.Set(checkCodeKey, String.valueOf(CheckCodecntNum));
- RedisKit.Expire(checkCodeKey, 60 * 5);
+ if (Redis.use().exists(checkCodeKey))
+ CheckCodecntNum = Integer.parseInt(Redis.use().get(checkCodeKey).toString()) + CheckCodecntNum;
+ Redis.use().set(checkCodeKey, String.valueOf(CheckCodecntNum));
+ Redis.use().expire(checkCodeKey, 60 * 5);
if (CheckCodecntNum == CheckCodeErrCnt) {
resultJson.put("success", false);
@@ -101,7 +101,7 @@ public class LoginPersonController extends Controller {
String PassWordKey = "WrongPassWord_" + username;
int ErrCnt = 4; //最多允许错几次 4+1
int cntNum = 0; //错几次了
- if (RedisKit.Exists(PassWordKey)) cntNum = Integer.parseInt(RedisKit.Get(PassWordKey).toString());
+ if (Redis.use().exists(PassWordKey)) cntNum = Integer.parseInt(Redis.use().get(PassWordKey).toString());
if (cntNum > ErrCnt) {
resultJson.put("success", false);
resultJson.put("msg", "账号被停用5分钟,请稍后再试!");
@@ -120,10 +120,10 @@ public class LoginPersonController extends Controller {
if (loginMap == null || !passwordEncode.equals(loginMap.get("password").toString())) {
//扩展支持连续输入用户名密码错误,停用账号5分钟功能 2022.06.07
cntNum = 1;
- if (RedisKit.Exists(PassWordKey))
- cntNum = Integer.parseInt(RedisKit.Get(PassWordKey).toString()) + cntNum;
- RedisKit.Set(PassWordKey, String.valueOf(cntNum));
- RedisKit.Expire(PassWordKey, 60 * 5);
+ if (Redis.use().exists(PassWordKey))
+ cntNum = Integer.parseInt(Redis.use().get(PassWordKey).toString()) + cntNum;
+ Redis.use().set(PassWordKey, String.valueOf(cntNum));
+ Redis.use().expire(PassWordKey, 60 * 5);
if (cntNum > ErrCnt) {
resultJson.put("success", false);
resultJson.put("msg", "密码连续输入" + (ErrCnt + 1) + "次全部错误,账号将被停用5分钟!");
@@ -142,8 +142,8 @@ public class LoginPersonController extends Controller {
return;
}
//去掉限制
- RedisKit.Del(PassWordKey);
- RedisKit.Del(checkCodeKey);
+ Redis.use().del(PassWordKey);
+ Redis.use().del(checkCodeKey);
//防止用户攻击修改Cookie
Map _map = new HashMap();
_map.put("identity_id", loginMap.get("identity_id"));
diff --git a/ds-base/src/main/java/com/dsideal/base/Util/PkUtil.java b/ds-base/src/main/java/com/dsideal/base/Util/PkUtil.java
index d9879335..0b96fb7a 100644
--- a/ds-base/src/main/java/com/dsideal/base/Util/PkUtil.java
+++ b/ds-base/src/main/java/com/dsideal/base/Util/PkUtil.java
@@ -2,6 +2,7 @@ package com.dsideal.base.Util;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
+import com.jfinal.plugin.redis.Redis;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -28,8 +29,8 @@ public class PkUtil {
Record record = Db.findFirst(sql, identity_id);
int identity_pk_num = record.getInt("identity_pk_num");
//初始化要删除掉
- RedisKit.Del(identityMap.get(key) + "_identity_pk_num");
- RedisKit.incrBy(identityMap.get(key) + "_identity_pk_num", identity_pk_num);
+ Redis.use().del(identityMap.get(key) + "_identity_pk_num");
+ Redis.use().incrBy(identityMap.get(key) + "_identity_pk_num", identity_pk_num);
log.info("初始化人员身份主键生成器成功:" + identityMap.get(key));
}
}
@@ -44,8 +45,8 @@ public class PkUtil {
Record record = Db.findFirst(sql);
int org_pk_num = record.getInt("org_pk_num");
//初始化要删除掉
- RedisKit.Del("org_pk_num");
- RedisKit.incrBy("org_pk_num", org_pk_num);
+ Redis.use().del("org_pk_num");
+ Redis.use().incrBy("org_pk_num", org_pk_num);
}
/**
@@ -73,7 +74,7 @@ public class PkUtil {
*/
public static long GetPersonNumPk(int identity_id, int count) {
String redisPrefix = identityMap.get(identity_id);
- return RedisKit.incrBy(redisPrefix + "_identity_pk_num", count);
+ return Redis.use().incrBy(redisPrefix + "_identity_pk_num", count);
}
/**
@@ -82,6 +83,6 @@ public class PkUtil {
* 时间:2018-11-22
*/
public static long GetOrgNumPk(int count) {
- return RedisKit.incrBy("org_pk_num", count);
+ return Redis.use().incrBy("org_pk_num", count);
}
}
diff --git a/ds-base/src/main/java/com/dsideal/base/Util/RedisKit.java b/ds-base/src/main/java/com/dsideal/base/Util/RedisKit.java
deleted file mode 100644
index 801d4e3a..00000000
--- a/ds-base/src/main/java/com/dsideal/base/Util/RedisKit.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.dsideal.base.Util;
-
-import com.jfinal.plugin.redis.Redis;
-import redis.clients.jedis.Pipeline;
-import redis.clients.jedis.resps.Tuple;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-public class RedisKit {
-
- public static String Get(String key) {
- return Redis.use().call(jedis -> jedis.get(key));
- }
-
- public static void Set(String key, String value) {
- Redis.use().call(jedis -> jedis.set(key, value));
- }
-
- public static void Expire(String key, long seconds) {
- Redis.use().call(jedis -> jedis.expire(key, seconds));
- }
-
- public static boolean Exists(String key) {
- if (Redis.use() != null) return Redis.use().call(jedis -> jedis.exists(key));
- return false;
- }
-
-
- public static void Del(String key) {
- Redis.use().call(jedis -> jedis.del(key));
- }
-
- public static String HGet(String key, String field) {
- return Redis.use().call(jedis -> jedis.hget(key, field));
- }
-
-
- public static Map HGetAll(String key) {
- return Redis.use().call(jedis -> jedis.hgetAll(key));
- }
-
- public static void HSet(String key, String field, String value) {
- Redis.use().call(jedis -> jedis.hset(key, field, value));
- }
-
-
- public static long incrBy(String key, int num) {
- return Redis.use().call(jedis -> jedis.incrBy(key, num));
- }
-
- public static Pipeline getPipline() {
- return Redis.use().getJedis().pipelined();
- }
-
- public static void SAdd(String key, String value) {
- Redis.use().call(jedis -> jedis.sadd(key, value));
- }
-
- public static void SRem(String key, String value) {
- Redis.use().call(jedis -> jedis.srem(key, value));
- }
-
- public static Set SMembers(String key) {
- return Redis.use().call(jedis -> jedis.smembers(key));
- }
-
- public static List zrangeByScoreWithScores(String key, String start, String end) {
- return Redis.use().call(jedis -> jedis.zrangeByScoreWithScores(key, start, end));
- }
-
- public static void zrem(String key, String value) {
- Redis.use().call(jedis -> jedis.zrem(key, value));
- }
-
- public static void zadd(String key, double score, String value) {
- Redis.use().call(jedis -> jedis.zadd(key, score, value));
- }
-
- public static long zcard(String key) {
- return Redis.use().call(jedis -> jedis.zcard(key));
- }
-}
\ No newline at end of file
diff --git a/ds-base/src/main/java/com/dsideal/base/Util/RedisUtil.java b/ds-base/src/main/java/com/dsideal/base/Util/RedisUtil.java
deleted file mode 100644
index 9971edd2..00000000
--- a/ds-base/src/main/java/com/dsideal/base/Util/RedisUtil.java
+++ /dev/null
@@ -1,194 +0,0 @@
-package com.dsideal.base.Util;
-
-import com.jfinal.kit.LogKit;
-import com.jfinal.kit.PropKit;
-import redis.clients.jedis.Jedis;
-import redis.clients.jedis.JedisPool;
-import redis.clients.jedis.JedisPoolConfig;
-import redis.clients.jedis.exceptions.JedisConnectionException;
-import redis.clients.jedis.params.SetParams;
-
-import java.util.Collections;
-
-public final class RedisUtil {
- //Redis服务器IP
- private static String ADDR = PropKit.get("redis_ip");
- //Redis的端口号
- private static int PORT = PropKit.getInt("redis_port");
-
- //可用连接实例的最大数目,默认值为8;
- //如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
- private static int MAX_ACTIVE = -1;
-
- //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值也是8。
- private static int MAX_IDLE = 200;
-
- //等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException;
- private static int MAX_WAIT = 10000;
-
- private static int TIMEOUT = 10000;
-
- //在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;
- private static boolean TEST_ON_BORROW = true;
-
- private static JedisPool jedisPool = null;
-
- /**
- * 初始化Redis连接池
- */
- static {
- try {
- JedisPoolConfig config = new JedisPoolConfig();
- config.setMaxTotal(MAX_ACTIVE);
- config.setMaxIdle(MAX_IDLE);
- config.setMaxWaitMillis(MAX_WAIT);
- config.setTestOnBorrow(TEST_ON_BORROW);
- jedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, null);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- /**
- * 获取Jedis实例
- *
- * @return
- */
- public static Jedis getJedis() {
- try {
- if (jedisPool != null) {
- Jedis resource = jedisPool.getResource();
- return resource;
- } else {
- return null;
- }
- } catch (Exception e) {
- e.printStackTrace();
- return null;
- }
- }
-
- /**
- * 释放jedis资源
- *
- * @param jedis
- */
- public static void returnResource(final Jedis jedis) {
- if (jedis != null) {
- jedisPool.returnResource(jedis);
- }
- }
-
- private static void close(Jedis jedis) {
- try {
- jedisPool.returnResource(jedis);
- } catch (Exception e) {
- if (jedis.isConnected()) {
- jedis.disconnect();
- }
- }
- }
-
- /**
- * 返回的是列表的剩余个数
- */
- public static long lpush(String key, String value) {
- Jedis jedis = null;
- long ret = 0;
- try {
- jedis = jedisPool.getResource();
- if (jedis == null) return ret;
- ret = jedis.lpush(key, value);
- } catch (Exception e) {
- //释放redis对象
- jedisPool.returnBrokenResource(jedis);
- } finally {
- //返还到连接池
- close(jedis);
- }
- return ret;
- }
-
- public static Long llen(String key) {
- Jedis jedis = null;
- try {
- jedis = jedisPool.getResource();
- if (jedis == null) {
- LogKit.error("get jedis failed.");
- return -1L;
- }
- return jedis.llen(key);
- } catch (JedisConnectionException e) {
- //释放redis对象
- jedisPool.returnBrokenResource(jedis);
- } finally {
- //返还到连接池
- close(jedis);
- }
- return -1L;
- }
-
- /**
- * 获取队列数据
- *
- * @param key 键名
- * @return
- */
- public static String rpop(String key) {
- Jedis jedis = null;
- try {
- jedis = jedisPool.getResource();
- if (jedis == null) {
- LogKit.error("get jedis failed.");
- return null;
- }
- return jedis.rpop(key);
- } catch (JedisConnectionException e) {
- //释放redis对象
- jedisPool.returnBrokenResource(jedis);
- } finally {
- //返还到连接池
- close(jedis);
- }
- return null;
- }
-
- private static final String LOCK_SUCCESS = "OK";
- private static final Long RELEASE_SUCCESS = 1L;
-
- /**
- * 尝试获取分布式锁
- *
- * @param lockKey 锁
- * @param requestId 请求标识
- * @param expireTime 超期时间
- * @return 是否获取成功
- */
- public static boolean tryGetDistributedLock(String lockKey, String requestId, long expireTime) {
- Jedis jedis = RedisUtil.getJedis();
- //设置的参数
- SetParams sp = new SetParams();
- sp.ex(expireTime);//过期时间
- sp.nx(); //key不存在时才set值
- String result = jedis.set(lockKey, requestId, sp);
- RedisUtil.returnResource(jedis);
- return LOCK_SUCCESS.equals(result);
- }
-
- /**
- * 释放分布式锁
- *
- * @param lockKey 锁
- * @param requestId 请求标识
- * @return 是否释放成功
- */
- public static boolean releaseDistributedLock(String lockKey, String requestId) {
- Jedis jedis = RedisUtil.getJedis();
- String script = "if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end";
- Object result = jedis.eval(script, Collections.singletonList(lockKey), Collections.singletonList(requestId));
- RedisUtil.returnResource(jedis);
- if (RELEASE_SUCCESS.equals(result))
- return true;
- return false;
- }
-}
diff --git a/ds-build/src/main/java/build_ds_base.java b/ds-build/src/main/java/build_ds_base.java
index 91f9139b..f33a7381 100644
--- a/ds-build/src/main/java/build_ds_base.java
+++ b/ds-build/src/main/java/build_ds_base.java
@@ -5,6 +5,5 @@ public class build_ds_base {
//项目名称
String projectName = "ds-base";
PublishUtil.publish(projectName);
- System.out.println("开始生成镜像");
}
}
diff --git a/ds-build/src/main/java/build_ds_gw.java b/ds-build/src/main/java/build_ds_gw.java
index 3b6b4565..bf4c76d1 100644
--- a/ds-build/src/main/java/build_ds_gw.java
+++ b/ds-build/src/main/java/build_ds_gw.java
@@ -5,6 +5,5 @@ public class build_ds_gw {
//项目名称
String projectName = "ds-gw";
PublishUtil.publish(projectName);
- System.out.println("开始生成镜像");
}
}