diff --git a/manage/src/main/java/com/godfunc/modules/security/service/impl/CaptchaServiceImpl.java b/manage/src/main/java/com/godfunc/modules/security/service/impl/CaptchaServiceImpl.java index 56e29a7..ddeeede 100644 --- a/manage/src/main/java/com/godfunc/modules/security/service/impl/CaptchaServiceImpl.java +++ b/manage/src/main/java/com/godfunc/modules/security/service/impl/CaptchaServiceImpl.java @@ -2,9 +2,8 @@ import com.godfunc.modules.security.service.CaptchaService; import com.google.code.kaptcha.Producer; -import com.google.common.cache.Cache; -import com.google.common.cache.CacheBuilder; import org.apache.commons.lang3.StringUtils; +import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Service; import java.awt.image.BufferedImage; @@ -18,27 +17,29 @@ public class CaptchaServiceImpl implements CaptchaService { private final Producer producer; + private final StringRedisTemplate redisTemplate; - public CaptchaServiceImpl(Producer producer) { + public CaptchaServiceImpl(Producer producer, StringRedisTemplate redisTemplate) { this.producer = producer; + this.redisTemplate = redisTemplate; } /** * 有需要可以替换成redis */ - Cache<String, String> captchaCache = CacheBuilder.newBuilder().maximumSize(1000).expireAfterAccess(5, TimeUnit.MINUTES).build(); @Override public BufferedImage create(String uuid) { String code = producer.createText(); - captchaCache.put(uuid, code); + redisTemplate.opsForValue().set(uuid, code, 5, TimeUnit.MINUTES); return producer.createImage(code); } @Override public boolean validate(String uuid, String code) { - String text = captchaCache.getIfPresent(uuid); - if(StringUtils.isNotBlank(text)) { + String text = redisTemplate.opsForValue().get(uuid); + if (StringUtils.isNotBlank(text)) { + redisTemplate.delete(uuid); return code.equalsIgnoreCase(text); } return false; diff --git a/manage/src/main/resources/bootstrap-prod.yml b/manage/src/main/resources/bootstrap-prod.yml index 3e4c8fe..b45aa3d 100644 --- a/manage/src/main/resources/bootstrap-prod.yml +++ b/manage/src/main/resources/bootstrap-prod.yml @@ -2,10 +2,10 @@ spring: cloud: nacos: config: - server-addr: 192.168.31.62:8848 - namespace: 97a12ee4-81a2-420f-ba7b-564b47b3279b - discovery: server-addr: 192.168.31.61:8848 - namespace: 97a12ee4-81a2-420f-ba7b-564b47b3279b + namespace: fd744ed2-0b38-4fe3-9414-662bf018e1df + discovery: + server-addr: 192.168.31.62:8848 + namespace: fd744ed2-0b38-4fe3-9414-662bf018e1df log: path: /usr/local/log/prod/gpay/gpay-manage \ No newline at end of file diff --git a/pom.xml b/pom.xml index 0708232..2923c34 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ <jsoup.version>1.13.1</jsoup.version> <jBCrypt.version>0.4.3</jBCrypt.version> <rocketmq.version>2.2.0</rocketmq.version> - <spring-cloud-alibaba.version>2.2.1.RELEASE</spring-cloud-alibaba.version> + <spring-cloud-alibaba.version>2.2.6.RELEASE</spring-cloud-alibaba.version> </properties> <modules>