From 1a10e944ba74df3741626bb3e6437673cabe54ef Mon Sep 17 00:00:00 2001
From: sleepybear <569750408@qq.com>
Date: Fri, 6 May 2022 11:32:58 +0800
Subject: [PATCH] =?UTF-8?q?@dev=20v0.2.1=EF=BC=9A=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E5=8C=85=E5=90=8D=E3=80=81=E5=BC=95=E5=85=A5=E6=96=B0=E7=BC=93?=
=?UTF-8?q?=E5=AD=98=E5=B7=A5=E5=85=B7=E3=80=81=E6=97=A5=E5=BF=97=E4=BC=98?=
=?UTF-8?q?=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitignore | 3 +-
pom.xml | 22 ++++-
readme.md | 7 +-
.../ddtcrawler/DdtCrawlerApplication.java | 4 +-
.../advice/ControllerReturnAdvice.java | 8 +-
.../ddtcrawler/aspect/ConcurrentAspect.java | 19 ++--
.../xiejx}/ddtcrawler/config/ConfigBean.java | 2 +-
.../java/cn/xiejx/ddtcrawler/config/Ioc.java | 24 +++++
.../xiejx/ddtcrawler/constants/Constant.java | 12 +++
.../controller/AuctionController.java | 25 +++--
.../controller/PrivilegeController.java | 6 +-
.../ddtcrawler/controller/TaskController.java | 8 +-
.../controller/TemplateController.java | 10 +-
.../ddtcrawler/controller/UserController.java | 18 ++--
.../ddtcrawler/cookie/CookieHelper.java | 2 +-
.../xiejx}/ddtcrawler/cookie/WebUser.java | 18 ++--
.../xiejx}/ddtcrawler/domain/BaseDomain.java | 2 +-
.../xiejx}/ddtcrawler/domain/Item.java | 6 +-
.../xiejx}/ddtcrawler/domain/QueryUrl.java | 10 +-
.../xiejx}/ddtcrawler/domain/Result.java | 2 +-
.../xiejx}/ddtcrawler/domain/Template.java | 2 +-
.../domain/constant/AuctionConstant.java | 2 +-
.../xiejx}/ddtcrawler/dto/TemplateDto.java | 4 +-
.../ddtcrawler/exception/MyException.java | 4 +-
.../xiejx}/ddtcrawler/http/HttpHelper.java | 4 +-
.../ddtcrawler/http/HttpRequestMaker.java | 4 +-
.../ddtcrawler/http/HttpResponseHelper.java | 4 +-
.../http/enumeration/HttpStatusCode.java | 2 +-
.../http/enumeration/MethodEnum.java | 2 +-
.../interceptor/UserInterceptor.java | 15 +--
.../ddtcrawler/interceptor/WebMvcConfig.java | 3 +-
.../xiejx}/ddtcrawler/logic/AuctionLogic.java | 24 ++---
.../ddtcrawler/logic/TemplateLogic.java | 8 +-
.../xiejx}/ddtcrawler/logic/WebUserLogic.java | 34 ++++---
.../xiejx}/ddtcrawler/mapper/ItemMapper.java | 4 +-
.../ddtcrawler/mapper/TemplateMapper.java | 4 +-
.../ddtcrawler/schedule/MySchedule.java | 23 +----
.../ddtcrawler/service/ItemService.java | 8 +-
.../ddtcrawler/service/TemplateService.java | 8 +-
.../xiejx}/ddtcrawler/task/ItemTask.java | 47 +++++-----
.../xiejx}/ddtcrawler/test/Test.java | 2 +-
.../ddtcrawler/utils/EncryptedUtils.java | 2 +-
.../ddtcrawler/utils/ThreadPoolUtil.java | 2 +-
.../xiejx}/ddtcrawler/utils/TimeUtil.java | 2 +-
.../xiejx}/ddtcrawler/vo/MyMessage.java | 2 +-
.../xiejx}/ddtcrawler/vo/ResultCode.java | 2 +-
.../ddtcrawler/vo/ResultCodeConstant.java | 6 +-
.../com/xjx/ddtcrawler/cache/CacheDomain.java | 30 ------
.../xjx/ddtcrawler/cache/CacheInterface.java | 12 ---
.../com/xjx/ddtcrawler/cache/CommonCache.java | 65 -------------
.../xjx/ddtcrawler/cache/WebUserCache.java | 94 -------------------
src/main/resources/application.yml | 10 +-
src/main/resources/logback-spring.xml | 6 ++
src/main/resources/logging.xml | 35 -------
.../DdtCrawlerApplicationTests.java | 2 +-
55 files changed, 263 insertions(+), 423 deletions(-)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/DdtCrawlerApplication.java (80%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/advice/ControllerReturnAdvice.java (91%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/aspect/ConcurrentAspect.java (75%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/config/ConfigBean.java (96%)
create mode 100644 src/main/java/cn/xiejx/ddtcrawler/config/Ioc.java
create mode 100644 src/main/java/cn/xiejx/ddtcrawler/constants/Constant.java
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/controller/AuctionController.java (84%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/controller/PrivilegeController.java (87%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/controller/TaskController.java (69%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/controller/TemplateController.java (85%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/controller/UserController.java (87%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/cookie/CookieHelper.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/cookie/WebUser.java (88%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/BaseDomain.java (94%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/Item.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/QueryUrl.java (92%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/Result.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/Template.java (93%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/domain/constant/AuctionConstant.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/dto/TemplateDto.java (91%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/exception/MyException.java (89%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/http/HttpHelper.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/http/HttpRequestMaker.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/http/HttpResponseHelper.java (97%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/http/enumeration/HttpStatusCode.java (99%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/http/enumeration/MethodEnum.java (96%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/interceptor/UserInterceptor.java (81%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/interceptor/WebMvcConfig.java (87%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/logic/AuctionLogic.java (95%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/logic/TemplateLogic.java (91%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/logic/WebUserLogic.java (75%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/mapper/ItemMapper.java (72%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/mapper/TemplateMapper.java (74%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/schedule/MySchedule.java (51%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/service/ItemService.java (83%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/service/TemplateService.java (94%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/task/ItemTask.java (84%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/test/Test.java (67%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/utils/EncryptedUtils.java (98%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/utils/ThreadPoolUtil.java (95%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/utils/TimeUtil.java (97%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/vo/MyMessage.java (92%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/vo/ResultCode.java (96%)
rename src/main/java/{com/xjx => cn/xiejx}/ddtcrawler/vo/ResultCodeConstant.java (78%)
delete mode 100644 src/main/java/com/xjx/ddtcrawler/cache/CacheDomain.java
delete mode 100644 src/main/java/com/xjx/ddtcrawler/cache/CacheInterface.java
delete mode 100644 src/main/java/com/xjx/ddtcrawler/cache/CommonCache.java
delete mode 100644 src/main/java/com/xjx/ddtcrawler/cache/WebUserCache.java
create mode 100644 src/main/resources/logback-spring.xml
delete mode 100644 src/main/resources/logging.xml
rename src/test/java/{com/xjx => cn/xiejx}/ddtcrawler/DdtCrawlerApplicationTests.java (87%)
diff --git a/.gitignore b/.gitignore
index 5031639..aa01cf2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,4 +36,5 @@ build/
/out/
### 自定义 ###
-application-tencent.yml
\ No newline at end of file
+application-tencent.yml
+logs/
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index d80807f..5dd4fcf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,9 +8,9 @@
3.0.0-M2
- com.xjx
+ cn.xiejx
ddt-crawler
- 0.2.0
+ 0.2.1
ddt-crawler
ddt-crawler
@@ -20,6 +20,12 @@
org.springframework.boot
spring-boot-starter-web
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
+
mysql
@@ -48,6 +54,12 @@
commons-lang3
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.13.2.2
+
+
com.baomidou
mybatis-plus-boot-starter
@@ -63,12 +75,16 @@
commons-collections4
4.4
-
com.thoughtworks.xstream
xstream
1.4.19
+
+ cn.xiejx
+ cacher
+ 0.0.2
+
diff --git a/readme.md b/readme.md
index b92b12e..e478602 100644
--- a/readme.md
+++ b/readme.md
@@ -39,4 +39,9 @@ create index template_name_index on template (name);
其中 selfid 为用户 id,不会变,key 为每次登录随机生成,下线即失效,所以需要账号一直在线才能使用。搜索结果如下:
-![搜索物品](imgs/搜索物品.png)
\ No newline at end of file
+![搜索物品](imgs/搜索物品.png)
+# 更新日志
+## v0.2.1
+- 【增】:添加 logback.xml 日志文件
+- 【增】:引入自建缓存工具 cacher.jar,移除原本缓存工具
+- 【改】:包名从 com.xjx 改为 cn.xiejx
\ No newline at end of file
diff --git a/src/main/java/com/xjx/ddtcrawler/DdtCrawlerApplication.java b/src/main/java/cn/xiejx/ddtcrawler/DdtCrawlerApplication.java
similarity index 80%
rename from src/main/java/com/xjx/ddtcrawler/DdtCrawlerApplication.java
rename to src/main/java/cn/xiejx/ddtcrawler/DdtCrawlerApplication.java
index ff24375..5d5e844 100644
--- a/src/main/java/com/xjx/ddtcrawler/DdtCrawlerApplication.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/DdtCrawlerApplication.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler;
+package cn.xiejx.ddtcrawler;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
@@ -7,7 +7,7 @@
/**
* @author xjx
*/
-@MapperScan(basePackages = {"com.xjx.ddtcrawler.mapper"})
+@MapperScan(basePackages = {"cn.xiejx.ddtcrawler.mapper"})
@SpringBootApplication
public class DdtCrawlerApplication {
diff --git a/src/main/java/com/xjx/ddtcrawler/advice/ControllerReturnAdvice.java b/src/main/java/cn/xiejx/ddtcrawler/advice/ControllerReturnAdvice.java
similarity index 91%
rename from src/main/java/com/xjx/ddtcrawler/advice/ControllerReturnAdvice.java
rename to src/main/java/cn/xiejx/ddtcrawler/advice/ControllerReturnAdvice.java
index 072f443..3ed2571 100644
--- a/src/main/java/com/xjx/ddtcrawler/advice/ControllerReturnAdvice.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/advice/ControllerReturnAdvice.java
@@ -1,8 +1,8 @@
-package com.xjx.ddtcrawler.advice;
+package cn.xiejx.ddtcrawler.advice;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.vo.ResultCode;
-import com.xjx.ddtcrawler.vo.ResultCodeConstant;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.vo.ResultCode;
+import cn.xiejx.ddtcrawler.vo.ResultCodeConstant;
import jakarta.servlet.http.HttpServletRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.MethodParameter;
diff --git a/src/main/java/com/xjx/ddtcrawler/aspect/ConcurrentAspect.java b/src/main/java/cn/xiejx/ddtcrawler/aspect/ConcurrentAspect.java
similarity index 75%
rename from src/main/java/com/xjx/ddtcrawler/aspect/ConcurrentAspect.java
rename to src/main/java/cn/xiejx/ddtcrawler/aspect/ConcurrentAspect.java
index 9a6704d..bbf5573 100644
--- a/src/main/java/com/xjx/ddtcrawler/aspect/ConcurrentAspect.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/aspect/ConcurrentAspect.java
@@ -1,8 +1,9 @@
-package com.xjx.ddtcrawler.aspect;
+package cn.xiejx.ddtcrawler.aspect;
-import com.xjx.ddtcrawler.cache.CommonCache;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.exception.MyException;
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.ddtcrawler.config.Ioc;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.exception.MyException;
import jakarta.annotation.Resource;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletRequest;
@@ -10,6 +11,7 @@
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
/**
@@ -23,10 +25,11 @@ public class ConcurrentAspect {
@Resource
private HttpServletRequest request;
+ @Qualifier(Ioc.COMMON_CACHER_NAME)
@Resource
- private CommonCache commonCache;
+ private Cacher commonCacher;
- @Around("execution(* com.xjx.ddtcrawler.controller..*(..))")
+ @Around("execution(* cn.xiejx.ddtcrawler.controller..*(..))")
public Object aroundMethod(ProceedingJoinPoint pjd) throws Throwable {
Cookie[] cookies = request.getCookies();
if (cookies == null || cookies.length == 0) {
@@ -45,14 +48,14 @@ public Object aroundMethod(ProceedingJoinPoint pjd) throws Throwable {
Long concurrentTime = webUser.getConcurrentTime();
if (concurrentTime != null) {
// 获取上一次的请求时间
- Long lastRequestTime = commonCache.getCache(getLastRequestTimeKey(id));
+ Long lastRequestTime = commonCacher.get(getLastRequestTimeKey(id));
// 设置本次的请求时间和过期时间
if (lastRequestTime != null) {
if (lastRequestTime + concurrentTime > now) {
throw new MyException("并发限制,限制请求间隔为 " + concurrentTime + " 毫秒");
}
}
- commonCache.setCache(getLastRequestTimeKey(id), now, concurrentTime);
+ commonCacher.set(getLastRequestTimeKey(id), now, concurrentTime);
}
return pjd.proceed();
diff --git a/src/main/java/com/xjx/ddtcrawler/config/ConfigBean.java b/src/main/java/cn/xiejx/ddtcrawler/config/ConfigBean.java
similarity index 96%
rename from src/main/java/com/xjx/ddtcrawler/config/ConfigBean.java
rename to src/main/java/cn/xiejx/ddtcrawler/config/ConfigBean.java
index b879e34..f432fbb 100644
--- a/src/main/java/com/xjx/ddtcrawler/config/ConfigBean.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/config/ConfigBean.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.config;
+package cn.xiejx.ddtcrawler.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
diff --git a/src/main/java/cn/xiejx/ddtcrawler/config/Ioc.java b/src/main/java/cn/xiejx/ddtcrawler/config/Ioc.java
new file mode 100644
index 0000000..721303f
--- /dev/null
+++ b/src/main/java/cn/xiejx/ddtcrawler/config/Ioc.java
@@ -0,0 +1,24 @@
+package cn.xiejx.ddtcrawler.config;
+
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.cacher.CacherBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.concurrent.TimeUnit;
+
+/**
+ * There is description
+ *
+ * @author sleepybear
+ * @date 2022/05/05 02:06
+ */
+@Configuration
+public class Ioc {
+ public static final String COMMON_CACHER_NAME = "commonCacher";
+
+ @Bean(COMMON_CACHER_NAME)
+ public Cacher a() {
+ return new CacherBuilder().showAllLogs().scheduleName(COMMON_CACHER_NAME).delay(60, TimeUnit.SECONDS).build();
+ }
+}
diff --git a/src/main/java/cn/xiejx/ddtcrawler/constants/Constant.java b/src/main/java/cn/xiejx/ddtcrawler/constants/Constant.java
new file mode 100644
index 0000000..fd83cc5
--- /dev/null
+++ b/src/main/java/cn/xiejx/ddtcrawler/constants/Constant.java
@@ -0,0 +1,12 @@
+package cn.xiejx.ddtcrawler.constants;
+
+/**
+ * There is description
+ *
+ * @author sleepybear
+ * @date 2022/05/05 02:42
+ */
+public class Constant {
+ public static final long ONE_DAY_SECONDS = 86400L;
+ public static final long ONE_DAY_MILLISECONDS = ONE_DAY_SECONDS * 1000L;
+}
diff --git a/src/main/java/com/xjx/ddtcrawler/controller/AuctionController.java b/src/main/java/cn/xiejx/ddtcrawler/controller/AuctionController.java
similarity index 84%
rename from src/main/java/com/xjx/ddtcrawler/controller/AuctionController.java
rename to src/main/java/cn/xiejx/ddtcrawler/controller/AuctionController.java
index a68e000..f6c6e24 100644
--- a/src/main/java/com/xjx/ddtcrawler/controller/AuctionController.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/controller/AuctionController.java
@@ -1,12 +1,14 @@
-package com.xjx.ddtcrawler.controller;
+package cn.xiejx.ddtcrawler.controller;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.domain.QueryUrl;
-import com.xjx.ddtcrawler.domain.Result;
-import com.xjx.ddtcrawler.domain.constant.AuctionConstant;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.logic.AuctionLogic;
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.domain.QueryUrl;
+import cn.xiejx.ddtcrawler.domain.Result;
+import cn.xiejx.ddtcrawler.domain.constant.AuctionConstant;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.logic.AuctionLogic;
import jakarta.annotation.Resource;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@@ -17,10 +19,14 @@
* @date 2021/8/1 21:15
*/
@RestController
+@Slf4j
public class AuctionController {
@Resource
private AuctionLogic auctionLogic;
+ @Resource
+ private Cacher cacher;
+
@RequestMapping("/auction/getAuctionItems")
public Result getItems(@RequestParam(required = false, defaultValue = "1") Integer page,
@RequestParam(required = false, defaultValue = "-1") Long userId,
@@ -80,4 +86,9 @@ public Result getAuctionPriceOder(String itemName,
}
return result;
}
+
+ @RequestMapping("/www")
+ public void a() {
+ log.info(cacher.getScheduleName());
+ }
}
diff --git a/src/main/java/com/xjx/ddtcrawler/controller/PrivilegeController.java b/src/main/java/cn/xiejx/ddtcrawler/controller/PrivilegeController.java
similarity index 87%
rename from src/main/java/com/xjx/ddtcrawler/controller/PrivilegeController.java
rename to src/main/java/cn/xiejx/ddtcrawler/controller/PrivilegeController.java
index d6c7bdf..23fb5d9 100644
--- a/src/main/java/com/xjx/ddtcrawler/controller/PrivilegeController.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/controller/PrivilegeController.java
@@ -1,7 +1,7 @@
-package com.xjx.ddtcrawler.controller;
+package cn.xiejx.ddtcrawler.controller;
-import com.xjx.ddtcrawler.config.ConfigBean;
-import com.xjx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.config.ConfigBean;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
diff --git a/src/main/java/com/xjx/ddtcrawler/controller/TaskController.java b/src/main/java/cn/xiejx/ddtcrawler/controller/TaskController.java
similarity index 69%
rename from src/main/java/com/xjx/ddtcrawler/controller/TaskController.java
rename to src/main/java/cn/xiejx/ddtcrawler/controller/TaskController.java
index 0de5337..d526727 100644
--- a/src/main/java/com/xjx/ddtcrawler/controller/TaskController.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/controller/TaskController.java
@@ -1,8 +1,8 @@
-package com.xjx.ddtcrawler.controller;
+package cn.xiejx.ddtcrawler.controller;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.task.ItemTask;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.task.ItemTask;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.RestController;
diff --git a/src/main/java/com/xjx/ddtcrawler/controller/TemplateController.java b/src/main/java/cn/xiejx/ddtcrawler/controller/TemplateController.java
similarity index 85%
rename from src/main/java/com/xjx/ddtcrawler/controller/TemplateController.java
rename to src/main/java/cn/xiejx/ddtcrawler/controller/TemplateController.java
index 5f3135f..738ad1b 100644
--- a/src/main/java/com/xjx/ddtcrawler/controller/TemplateController.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/controller/TemplateController.java
@@ -1,9 +1,9 @@
-package com.xjx.ddtcrawler.controller;
+package cn.xiejx.ddtcrawler.controller;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.dto.TemplateDto;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.logic.TemplateLogic;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.dto.TemplateDto;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.logic.TemplateLogic;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
diff --git a/src/main/java/com/xjx/ddtcrawler/controller/UserController.java b/src/main/java/cn/xiejx/ddtcrawler/controller/UserController.java
similarity index 87%
rename from src/main/java/com/xjx/ddtcrawler/controller/UserController.java
rename to src/main/java/cn/xiejx/ddtcrawler/controller/UserController.java
index b35a562..4dd451b 100644
--- a/src/main/java/com/xjx/ddtcrawler/controller/UserController.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/controller/UserController.java
@@ -1,11 +1,11 @@
-package com.xjx.ddtcrawler.controller;
+package cn.xiejx.ddtcrawler.controller;
-import com.xjx.ddtcrawler.cookie.CookieHelper;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.logic.WebUserLogic;
-import com.xjx.ddtcrawler.utils.TimeUtil;
-import com.xjx.ddtcrawler.vo.MyMessage;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.cookie.CookieHelper;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.logic.WebUserLogic;
+import cn.xiejx.ddtcrawler.utils.TimeUtil;
+import cn.xiejx.ddtcrawler.vo.MyMessage;
import jakarta.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -59,9 +59,7 @@ public MyMessage createTemporaryLicense(Long expireTime, @RequestParam(required
}
long now = System.currentTimeMillis();
- if (expireTime != null) {
- webUser.setExpireAt(expireTime * 1000 + now);
- }
+ webUser.setExpireTime(expireTime);
webUser.setConcurrentTime(concurrentTime);
String temporaryLicense = webUserLogic.generateTemporaryLicense(webUser);
if (expireTime == null) {
diff --git a/src/main/java/com/xjx/ddtcrawler/cookie/CookieHelper.java b/src/main/java/cn/xiejx/ddtcrawler/cookie/CookieHelper.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/cookie/CookieHelper.java
rename to src/main/java/cn/xiejx/ddtcrawler/cookie/CookieHelper.java
index b37afb5..224edd8 100644
--- a/src/main/java/com/xjx/ddtcrawler/cookie/CookieHelper.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/cookie/CookieHelper.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.cookie;
+package cn.xiejx.ddtcrawler.cookie;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/src/main/java/com/xjx/ddtcrawler/cookie/WebUser.java b/src/main/java/cn/xiejx/ddtcrawler/cookie/WebUser.java
similarity index 88%
rename from src/main/java/com/xjx/ddtcrawler/cookie/WebUser.java
rename to src/main/java/cn/xiejx/ddtcrawler/cookie/WebUser.java
index 3a84663..02d9101 100644
--- a/src/main/java/com/xjx/ddtcrawler/cookie/WebUser.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/cookie/WebUser.java
@@ -1,11 +1,9 @@
-package com.xjx.ddtcrawler.cookie;
+package cn.xiejx.ddtcrawler.cookie;
-import com.xjx.ddtcrawler.cache.CacheDomain;
-import com.xjx.ddtcrawler.config.ConfigBean;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.utils.EncryptedUtils;
+import cn.xiejx.ddtcrawler.config.ConfigBean;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.utils.EncryptedUtils;
import lombok.Data;
-import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
@@ -16,9 +14,8 @@
* @author XJX
* @date 2021/8/14 12:29
*/
-@EqualsAndHashCode(callSuper = true)
@Data
-public class WebUser extends CacheDomain implements Serializable {
+public class WebUser implements Serializable {
@Serial
private static final long serialVersionUID = 5392034256168678992L;
@@ -48,6 +45,7 @@ public class WebUser extends CacheDomain implements Serializable {
* 用户并发毫秒
*/
private Long concurrentTime = 500L;
+ private Long expireTime;
public static void setWebUser(WebUser webUser) {
WEB_USER_THREAD_LOCAL.set(webUser);
@@ -75,6 +73,10 @@ public static WebUser getSafeWebUser() throws MyException {
return res;
}
+ public Long getExpireAt() {
+ return this.expireTime + this.loginTime;
+ }
+
public boolean isTemporaryUser() {
return StringUtils.isNotBlank(this.temporaryLicense);
}
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/BaseDomain.java b/src/main/java/cn/xiejx/ddtcrawler/domain/BaseDomain.java
similarity index 94%
rename from src/main/java/com/xjx/ddtcrawler/domain/BaseDomain.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/BaseDomain.java
index d86f4c9..bbc52c6 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/BaseDomain.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/BaseDomain.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.domain;
+package cn.xiejx.ddtcrawler.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/Item.java b/src/main/java/cn/xiejx/ddtcrawler/domain/Item.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/domain/Item.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/Item.java
index b07a9a7..ec6168b 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/Item.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/Item.java
@@ -1,11 +1,11 @@
-package com.xjx.ddtcrawler.domain;
+package cn.xiejx.ddtcrawler.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
-import com.xjx.ddtcrawler.utils.EncryptedUtils;
-import com.xjx.ddtcrawler.utils.TimeUtil;
+import cn.xiejx.ddtcrawler.utils.EncryptedUtils;
+import cn.xiejx.ddtcrawler.utils.TimeUtil;
import lombok.Data;
import java.io.Serial;
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/QueryUrl.java b/src/main/java/cn/xiejx/ddtcrawler/domain/QueryUrl.java
similarity index 92%
rename from src/main/java/com/xjx/ddtcrawler/domain/QueryUrl.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/QueryUrl.java
index 5b2cd22..d25b634 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/QueryUrl.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/QueryUrl.java
@@ -1,9 +1,9 @@
-package com.xjx.ddtcrawler.domain;
+package cn.xiejx.ddtcrawler.domain;
-import com.xjx.ddtcrawler.config.ConfigBean;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.domain.constant.AuctionConstant;
-import com.xjx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.domain.constant.AuctionConstant;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.config.ConfigBean;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/Result.java b/src/main/java/cn/xiejx/ddtcrawler/domain/Result.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/domain/Result.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/Result.java
index f01dd30..080c38c 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/Result.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/Result.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.domain;
+package cn.xiejx.ddtcrawler.domain;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.thoughtworks.xstream.XStream;
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/Template.java b/src/main/java/cn/xiejx/ddtcrawler/domain/Template.java
similarity index 93%
rename from src/main/java/com/xjx/ddtcrawler/domain/Template.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/Template.java
index d3df98b..8145058 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/Template.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/Template.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.domain;
+package cn.xiejx.ddtcrawler.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/src/main/java/com/xjx/ddtcrawler/domain/constant/AuctionConstant.java b/src/main/java/cn/xiejx/ddtcrawler/domain/constant/AuctionConstant.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/domain/constant/AuctionConstant.java
rename to src/main/java/cn/xiejx/ddtcrawler/domain/constant/AuctionConstant.java
index 2a610cb..1ad87b5 100644
--- a/src/main/java/com/xjx/ddtcrawler/domain/constant/AuctionConstant.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/domain/constant/AuctionConstant.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.domain.constant;
+package cn.xiejx.ddtcrawler.domain.constant;
/**
* @author XJX
diff --git a/src/main/java/com/xjx/ddtcrawler/dto/TemplateDto.java b/src/main/java/cn/xiejx/ddtcrawler/dto/TemplateDto.java
similarity index 91%
rename from src/main/java/com/xjx/ddtcrawler/dto/TemplateDto.java
rename to src/main/java/cn/xiejx/ddtcrawler/dto/TemplateDto.java
index 066bca0..c8f74ca 100644
--- a/src/main/java/com/xjx/ddtcrawler/dto/TemplateDto.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/dto/TemplateDto.java
@@ -1,6 +1,6 @@
-package com.xjx.ddtcrawler.dto;
+package cn.xiejx.ddtcrawler.dto;
-import com.xjx.ddtcrawler.utils.EncryptedUtils;
+import cn.xiejx.ddtcrawler.utils.EncryptedUtils;
import lombok.Data;
import java.io.Serial;
diff --git a/src/main/java/com/xjx/ddtcrawler/exception/MyException.java b/src/main/java/cn/xiejx/ddtcrawler/exception/MyException.java
similarity index 89%
rename from src/main/java/com/xjx/ddtcrawler/exception/MyException.java
rename to src/main/java/cn/xiejx/ddtcrawler/exception/MyException.java
index 444c53a..14ae483 100644
--- a/src/main/java/com/xjx/ddtcrawler/exception/MyException.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/exception/MyException.java
@@ -1,6 +1,6 @@
-package com.xjx.ddtcrawler.exception;
+package cn.xiejx.ddtcrawler.exception;
-import com.xjx.ddtcrawler.vo.ResultCodeConstant;
+import cn.xiejx.ddtcrawler.vo.ResultCodeConstant;
import java.io.Serial;
import java.io.Serializable;
diff --git a/src/main/java/com/xjx/ddtcrawler/http/HttpHelper.java b/src/main/java/cn/xiejx/ddtcrawler/http/HttpHelper.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/http/HttpHelper.java
rename to src/main/java/cn/xiejx/ddtcrawler/http/HttpHelper.java
index ed23f33..89926d9 100644
--- a/src/main/java/com/xjx/ddtcrawler/http/HttpHelper.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/http/HttpHelper.java
@@ -1,6 +1,6 @@
-package com.xjx.ddtcrawler.http;
+package cn.xiejx.ddtcrawler.http;
-import com.xjx.ddtcrawler.http.enumeration.MethodEnum;
+import cn.xiejx.ddtcrawler.http.enumeration.MethodEnum;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.http.Header;
diff --git a/src/main/java/com/xjx/ddtcrawler/http/HttpRequestMaker.java b/src/main/java/cn/xiejx/ddtcrawler/http/HttpRequestMaker.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/http/HttpRequestMaker.java
rename to src/main/java/cn/xiejx/ddtcrawler/http/HttpRequestMaker.java
index 20eba34..5638d57 100644
--- a/src/main/java/com/xjx/ddtcrawler/http/HttpRequestMaker.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/http/HttpRequestMaker.java
@@ -1,6 +1,6 @@
-package com.xjx.ddtcrawler.http;
+package cn.xiejx.ddtcrawler.http;
-import com.xjx.ddtcrawler.http.enumeration.MethodEnum;
+import cn.xiejx.ddtcrawler.http.enumeration.MethodEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.http.*;
diff --git a/src/main/java/com/xjx/ddtcrawler/http/HttpResponseHelper.java b/src/main/java/cn/xiejx/ddtcrawler/http/HttpResponseHelper.java
similarity index 97%
rename from src/main/java/com/xjx/ddtcrawler/http/HttpResponseHelper.java
rename to src/main/java/cn/xiejx/ddtcrawler/http/HttpResponseHelper.java
index 4bc71d9..5a40642 100644
--- a/src/main/java/com/xjx/ddtcrawler/http/HttpResponseHelper.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/http/HttpResponseHelper.java
@@ -1,6 +1,6 @@
-package com.xjx.ddtcrawler.http;
+package cn.xiejx.ddtcrawler.http;
-import com.xjx.ddtcrawler.http.enumeration.HttpStatusCode;
+import cn.xiejx.ddtcrawler.http.enumeration.HttpStatusCode;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import org.apache.http.Header;
diff --git a/src/main/java/com/xjx/ddtcrawler/http/enumeration/HttpStatusCode.java b/src/main/java/cn/xiejx/ddtcrawler/http/enumeration/HttpStatusCode.java
similarity index 99%
rename from src/main/java/com/xjx/ddtcrawler/http/enumeration/HttpStatusCode.java
rename to src/main/java/cn/xiejx/ddtcrawler/http/enumeration/HttpStatusCode.java
index f6b6f9d..e03b5b7 100644
--- a/src/main/java/com/xjx/ddtcrawler/http/enumeration/HttpStatusCode.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/http/enumeration/HttpStatusCode.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.http.enumeration;
+package cn.xiejx.ddtcrawler.http.enumeration;
/**
* there is introduction
diff --git a/src/main/java/com/xjx/ddtcrawler/http/enumeration/MethodEnum.java b/src/main/java/cn/xiejx/ddtcrawler/http/enumeration/MethodEnum.java
similarity index 96%
rename from src/main/java/com/xjx/ddtcrawler/http/enumeration/MethodEnum.java
rename to src/main/java/cn/xiejx/ddtcrawler/http/enumeration/MethodEnum.java
index a50d871..5e3e632 100644
--- a/src/main/java/com/xjx/ddtcrawler/http/enumeration/MethodEnum.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/http/enumeration/MethodEnum.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.http.enumeration;
+package cn.xiejx.ddtcrawler.http.enumeration;
/**
* HTTP 方法枚举
diff --git a/src/main/java/com/xjx/ddtcrawler/interceptor/UserInterceptor.java b/src/main/java/cn/xiejx/ddtcrawler/interceptor/UserInterceptor.java
similarity index 81%
rename from src/main/java/com/xjx/ddtcrawler/interceptor/UserInterceptor.java
rename to src/main/java/cn/xiejx/ddtcrawler/interceptor/UserInterceptor.java
index ed9cb67..6e2db81 100644
--- a/src/main/java/com/xjx/ddtcrawler/interceptor/UserInterceptor.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/interceptor/UserInterceptor.java
@@ -1,12 +1,14 @@
-package com.xjx.ddtcrawler.interceptor;
+package cn.xiejx.ddtcrawler.interceptor;
-import com.xjx.ddtcrawler.cache.WebUserCache;
-import com.xjx.ddtcrawler.cookie.CookieHelper;
-import com.xjx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.ddtcrawler.config.Ioc;
+import cn.xiejx.ddtcrawler.cookie.CookieHelper;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
import jakarta.annotation.Resource;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
@@ -19,8 +21,9 @@
@Component
public class UserInterceptor implements HandlerInterceptor {
+ @Qualifier(Ioc.COMMON_CACHER_NAME)
@Resource
- private WebUserCache webUserCache;
+ private Cacher cacher;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
@@ -36,7 +39,7 @@ public boolean preHandle(HttpServletRequest request, HttpServletResponse respons
return HandlerInterceptor.super.preHandle(request, response, handler);
}
- WebUser cachedWebUser = webUserCache.getById(webUserId);
+ WebUser cachedWebUser = cacher.get(webUserId);
if (cachedWebUser == null) {
return HandlerInterceptor.super.preHandle(request, response, handler);
}
diff --git a/src/main/java/com/xjx/ddtcrawler/interceptor/WebMvcConfig.java b/src/main/java/cn/xiejx/ddtcrawler/interceptor/WebMvcConfig.java
similarity index 87%
rename from src/main/java/com/xjx/ddtcrawler/interceptor/WebMvcConfig.java
rename to src/main/java/cn/xiejx/ddtcrawler/interceptor/WebMvcConfig.java
index d7a866e..4eaecc6 100644
--- a/src/main/java/com/xjx/ddtcrawler/interceptor/WebMvcConfig.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/interceptor/WebMvcConfig.java
@@ -1,7 +1,6 @@
-package com.xjx.ddtcrawler.interceptor;
+package cn.xiejx.ddtcrawler.interceptor;
import jakarta.annotation.Resource;
-import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
diff --git a/src/main/java/com/xjx/ddtcrawler/logic/AuctionLogic.java b/src/main/java/cn/xiejx/ddtcrawler/logic/AuctionLogic.java
similarity index 95%
rename from src/main/java/com/xjx/ddtcrawler/logic/AuctionLogic.java
rename to src/main/java/cn/xiejx/ddtcrawler/logic/AuctionLogic.java
index 204a7f0..7cb4746 100644
--- a/src/main/java/com/xjx/ddtcrawler/logic/AuctionLogic.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/logic/AuctionLogic.java
@@ -1,15 +1,15 @@
-package com.xjx.ddtcrawler.logic;
-
-import com.xjx.ddtcrawler.domain.Item;
-import com.xjx.ddtcrawler.domain.QueryUrl;
-import com.xjx.ddtcrawler.domain.Result;
-import com.xjx.ddtcrawler.domain.constant.AuctionConstant;
-import com.xjx.ddtcrawler.dto.TemplateDto;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.http.HttpHelper;
-import com.xjx.ddtcrawler.http.HttpResponseHelper;
-import com.xjx.ddtcrawler.service.ItemService;
-import com.xjx.ddtcrawler.service.TemplateService;
+package cn.xiejx.ddtcrawler.logic;
+
+import cn.xiejx.ddtcrawler.domain.Item;
+import cn.xiejx.ddtcrawler.domain.QueryUrl;
+import cn.xiejx.ddtcrawler.domain.Result;
+import cn.xiejx.ddtcrawler.domain.constant.AuctionConstant;
+import cn.xiejx.ddtcrawler.dto.TemplateDto;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.service.ItemService;
+import cn.xiejx.ddtcrawler.service.TemplateService;
+import cn.xiejx.ddtcrawler.http.HttpHelper;
+import cn.xiejx.ddtcrawler.http.HttpResponseHelper;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
diff --git a/src/main/java/com/xjx/ddtcrawler/logic/TemplateLogic.java b/src/main/java/cn/xiejx/ddtcrawler/logic/TemplateLogic.java
similarity index 91%
rename from src/main/java/com/xjx/ddtcrawler/logic/TemplateLogic.java
rename to src/main/java/cn/xiejx/ddtcrawler/logic/TemplateLogic.java
index ab0d1a9..a555dbc 100644
--- a/src/main/java/com/xjx/ddtcrawler/logic/TemplateLogic.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/logic/TemplateLogic.java
@@ -1,8 +1,8 @@
-package com.xjx.ddtcrawler.logic;
+package cn.xiejx.ddtcrawler.logic;
-import com.xjx.ddtcrawler.dto.TemplateDto;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.service.TemplateService;
+import cn.xiejx.ddtcrawler.dto.TemplateDto;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.service.TemplateService;
import jakarta.annotation.Resource;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
diff --git a/src/main/java/com/xjx/ddtcrawler/logic/WebUserLogic.java b/src/main/java/cn/xiejx/ddtcrawler/logic/WebUserLogic.java
similarity index 75%
rename from src/main/java/com/xjx/ddtcrawler/logic/WebUserLogic.java
rename to src/main/java/cn/xiejx/ddtcrawler/logic/WebUserLogic.java
index 04466c1..9218012 100644
--- a/src/main/java/com/xjx/ddtcrawler/logic/WebUserLogic.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/logic/WebUserLogic.java
@@ -1,13 +1,16 @@
-package com.xjx.ddtcrawler.logic;
+package cn.xiejx.ddtcrawler.logic;
-import com.xjx.ddtcrawler.cache.WebUserCache;
-import com.xjx.ddtcrawler.cookie.CookieHelper;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.exception.MyException;
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.ddtcrawler.config.Ioc;
+import cn.xiejx.ddtcrawler.constants.Constant;
+import cn.xiejx.ddtcrawler.cookie.CookieHelper;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.exception.MyException;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
/**
@@ -17,8 +20,9 @@
@Component
@Slf4j
public class WebUserLogic {
+ @Qualifier(Ioc.COMMON_CACHER_NAME)
@Resource
- private WebUserCache webUserCache;
+ private Cacher cacher;
public void save(Long userId, String key, Long expireTime) throws MyException {
if (userId == null) {
@@ -41,10 +45,15 @@ public void save(Long userId, String key, Long expireTime) throws MyException {
int maxAge = CookieHelper.COOKIE_MAX_AGE;
if (expireTime != null) {
- webUser.setExpireAt(expireTime + now);
+ if (expireTime > Constant.ONE_DAY_MILLISECONDS) {
+ expireTime = Constant.ONE_DAY_MILLISECONDS;
+ }
maxAge = (int) (expireTime / 1000);
+ } else {
+ expireTime = Constant.ONE_DAY_MILLISECONDS;
}
- String id = webUserCache.saveUser(webUser);
+ String id = webUser.getId();
+ cacher.set(id, webUser, expireTime);
CookieHelper.setWebUserCookie(id, maxAge);
}
@@ -60,7 +69,8 @@ public String generateTemporaryLicense(WebUser temporaryWebUser) {
String temporaryLicense = RandomStringUtils.random(10, true, true);
temporaryWebUser.setId(temporaryLicense);
temporaryWebUser.setTemporaryLicense(temporaryLicense);
- webUserCache.saveUser(temporaryWebUser);
+ temporaryWebUser.setLoginTime(System.currentTimeMillis());
+ cacher.set(temporaryWebUser.getId(), temporaryWebUser, temporaryWebUser.getExpireTime());
return temporaryLicense;
}
@@ -70,7 +80,7 @@ public void deleteTemporaryLicense(WebUser webUser, String temporaryLicense) thr
}
Long userId = webUser.getUserId();
- WebUser cachedWebUser = webUserCache.getById(temporaryLicense);
+ WebUser cachedWebUser = cacher.get(temporaryLicense);
if (cachedWebUser == null) {
throw new MyException("找不到该License");
}
@@ -79,12 +89,12 @@ public void deleteTemporaryLicense(WebUser webUser, String temporaryLicense) thr
if (!userId.equals(cachedUserId)) {
throw new MyException("无权限操作该License");
}
- webUserCache.delete(temporaryLicense);
+ cacher.remove(temporaryLicense);
throw new MyException("删除成功");
}
public void writeTemporaryLicenseCookie(String temporaryLicense) throws MyException {
- WebUser webUser = webUserCache.getById(temporaryLicense);
+ WebUser webUser = cacher.get(temporaryLicense);
if (webUser == null) {
throw new MyException("用户不存在或者已过期");
}
diff --git a/src/main/java/com/xjx/ddtcrawler/mapper/ItemMapper.java b/src/main/java/cn/xiejx/ddtcrawler/mapper/ItemMapper.java
similarity index 72%
rename from src/main/java/com/xjx/ddtcrawler/mapper/ItemMapper.java
rename to src/main/java/cn/xiejx/ddtcrawler/mapper/ItemMapper.java
index 64d8a20..d860892 100644
--- a/src/main/java/com/xjx/ddtcrawler/mapper/ItemMapper.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/mapper/ItemMapper.java
@@ -1,7 +1,7 @@
-package com.xjx.ddtcrawler.mapper;
+package cn.xiejx.ddtcrawler.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.xjx.ddtcrawler.domain.Item;
+import cn.xiejx.ddtcrawler.domain.Item;
import org.springframework.stereotype.Repository;
/**
diff --git a/src/main/java/com/xjx/ddtcrawler/mapper/TemplateMapper.java b/src/main/java/cn/xiejx/ddtcrawler/mapper/TemplateMapper.java
similarity index 74%
rename from src/main/java/com/xjx/ddtcrawler/mapper/TemplateMapper.java
rename to src/main/java/cn/xiejx/ddtcrawler/mapper/TemplateMapper.java
index a54f37a..40f8979 100644
--- a/src/main/java/com/xjx/ddtcrawler/mapper/TemplateMapper.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/mapper/TemplateMapper.java
@@ -1,7 +1,7 @@
-package com.xjx.ddtcrawler.mapper;
+package cn.xiejx.ddtcrawler.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.xjx.ddtcrawler.domain.Template;
+import cn.xiejx.ddtcrawler.domain.Template;
import org.springframework.stereotype.Repository;
/**
diff --git a/src/main/java/com/xjx/ddtcrawler/schedule/MySchedule.java b/src/main/java/cn/xiejx/ddtcrawler/schedule/MySchedule.java
similarity index 51%
rename from src/main/java/com/xjx/ddtcrawler/schedule/MySchedule.java
rename to src/main/java/cn/xiejx/ddtcrawler/schedule/MySchedule.java
index 5caf4c4..a655197 100644
--- a/src/main/java/com/xjx/ddtcrawler/schedule/MySchedule.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/schedule/MySchedule.java
@@ -1,11 +1,9 @@
-package com.xjx.ddtcrawler.schedule;
+package cn.xiejx.ddtcrawler.schedule;
-import com.xjx.ddtcrawler.cache.CacheInterface;
-import com.xjx.ddtcrawler.dto.TemplateDto;
-import com.xjx.ddtcrawler.service.TemplateService;
+import cn.xiejx.ddtcrawler.dto.TemplateDto;
+import cn.xiejx.ddtcrawler.service.TemplateService;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
@@ -24,27 +22,14 @@ public class MySchedule {
@Resource
private TemplateService templateService;
- @Resource
- @Qualifier("commonCache")
- private CacheInterface commonCache;
- @Resource
- @Qualifier("webUserCache")
- private CacheInterface webUserCache;
@Scheduled(cron = "0 */1 * * * ?")
public void mySqlConnection() {
try {
- TemplateDto templateDto = templateService.getById(RANDOM.nextLong() / 1000);
+ TemplateDto templateDto = templateService.getById((long) Math.abs(RANDOM.nextInt(100000)));
log.info("test connection");
} catch (Exception e) {
log.error("test connection error", e);
}
}
-
- @Scheduled(cron = "0 */10 * * * ?")
- public void clearExpireCache() {
- commonCache.clearExpired();
- webUserCache.clearExpired();
- log.info("clearExpireCache");
- }
}
diff --git a/src/main/java/com/xjx/ddtcrawler/service/ItemService.java b/src/main/java/cn/xiejx/ddtcrawler/service/ItemService.java
similarity index 83%
rename from src/main/java/com/xjx/ddtcrawler/service/ItemService.java
rename to src/main/java/cn/xiejx/ddtcrawler/service/ItemService.java
index 40c55b4..da708f4 100644
--- a/src/main/java/com/xjx/ddtcrawler/service/ItemService.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/service/ItemService.java
@@ -1,8 +1,8 @@
-package com.xjx.ddtcrawler.service;
+package cn.xiejx.ddtcrawler.service;
-import com.xjx.ddtcrawler.domain.Item;
-import com.xjx.ddtcrawler.domain.Result;
-import com.xjx.ddtcrawler.mapper.ItemMapper;
+import cn.xiejx.ddtcrawler.domain.Item;
+import cn.xiejx.ddtcrawler.domain.Result;
+import cn.xiejx.ddtcrawler.mapper.ItemMapper;
import jakarta.annotation.Resource;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
diff --git a/src/main/java/com/xjx/ddtcrawler/service/TemplateService.java b/src/main/java/cn/xiejx/ddtcrawler/service/TemplateService.java
similarity index 94%
rename from src/main/java/com/xjx/ddtcrawler/service/TemplateService.java
rename to src/main/java/cn/xiejx/ddtcrawler/service/TemplateService.java
index 16e3204..a92dc56 100644
--- a/src/main/java/com/xjx/ddtcrawler/service/TemplateService.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/service/TemplateService.java
@@ -1,9 +1,9 @@
-package com.xjx.ddtcrawler.service;
+package cn.xiejx.ddtcrawler.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.xjx.ddtcrawler.domain.Template;
-import com.xjx.ddtcrawler.dto.TemplateDto;
-import com.xjx.ddtcrawler.mapper.TemplateMapper;
+import cn.xiejx.ddtcrawler.domain.Template;
+import cn.xiejx.ddtcrawler.dto.TemplateDto;
+import cn.xiejx.ddtcrawler.mapper.TemplateMapper;
import jakarta.annotation.Resource;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
diff --git a/src/main/java/com/xjx/ddtcrawler/task/ItemTask.java b/src/main/java/cn/xiejx/ddtcrawler/task/ItemTask.java
similarity index 84%
rename from src/main/java/com/xjx/ddtcrawler/task/ItemTask.java
rename to src/main/java/cn/xiejx/ddtcrawler/task/ItemTask.java
index 0deac80..02c7db1 100644
--- a/src/main/java/com/xjx/ddtcrawler/task/ItemTask.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/task/ItemTask.java
@@ -1,19 +1,20 @@
-package com.xjx.ddtcrawler.task;
-
-import com.xjx.ddtcrawler.cache.CommonCache;
-import com.xjx.ddtcrawler.cache.WebUserCache;
-import com.xjx.ddtcrawler.cookie.WebUser;
-import com.xjx.ddtcrawler.domain.Item;
-import com.xjx.ddtcrawler.domain.QueryUrl;
-import com.xjx.ddtcrawler.domain.Result;
-import com.xjx.ddtcrawler.domain.constant.AuctionConstant;
-import com.xjx.ddtcrawler.exception.MyException;
-import com.xjx.ddtcrawler.logic.AuctionLogic;
-import com.xjx.ddtcrawler.service.ItemService;
-import com.xjx.ddtcrawler.utils.ThreadPoolUtil;
+package cn.xiejx.ddtcrawler.task;
+
+import cn.xiejx.cacher.Cacher;
+import cn.xiejx.ddtcrawler.config.Ioc;
+import cn.xiejx.ddtcrawler.cookie.WebUser;
+import cn.xiejx.ddtcrawler.domain.Item;
+import cn.xiejx.ddtcrawler.domain.QueryUrl;
+import cn.xiejx.ddtcrawler.domain.Result;
+import cn.xiejx.ddtcrawler.domain.constant.AuctionConstant;
+import cn.xiejx.ddtcrawler.exception.MyException;
+import cn.xiejx.ddtcrawler.logic.AuctionLogic;
+import cn.xiejx.ddtcrawler.service.ItemService;
+import cn.xiejx.ddtcrawler.utils.ThreadPoolUtil;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
+import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import java.util.Collections;
@@ -34,10 +35,10 @@ public class ItemTask {
private AuctionLogic auctionLogic;
@Resource
private ItemService itemService;
+
+ @Qualifier(Ioc.COMMON_CACHER_NAME)
@Resource
- private CommonCache commonCache;
- @Resource
- private WebUserCache webUserCache;
+ private Cacher cacher;
public void initAuctionId() {
long maxAuctionId = itemService.getMaxAuctionId();
@@ -96,7 +97,7 @@ public String startTask(WebUser webUser) throws MyException {
throw new MyException("user 为空");
}
- Object cache = commonCache.getCache(ITEM_TASK_KEY);
+ Object cache = cacher.get(ITEM_TASK_KEY);
if (cache != null) {
return "running";
}
@@ -108,12 +109,12 @@ public String startTask(WebUser webUser) throws MyException {
int count = 1;
do {
// 15 分钟锁
- commonCache.setCache(ITEM_TASK_KEY, 1, 1000 * 60 * 15L);
+ cacher.set(ITEM_TASK_KEY, 1, 1000 * 60 * 15L);
log.info("获取次数:" + count++);
delay = singleTask(webUser);
sleep(delay);
} while (delay > 0);
- commonCache.delCache(ITEM_TASK_KEY);
+ cacher.remove(ITEM_TASK_KEY);
log.info("缓存 key 被删除");
};
ThreadPoolUtil.start(runnable);
@@ -127,7 +128,7 @@ public long singleTask(WebUser webUser) {
Long auctionId = null;
for (int i = 0; i < maxRetryTimes; i++) {
- Object cache = commonCache.getCache(ITEM_TASK_KEY);
+ Object cache = cacher.get(ITEM_TASK_KEY);
if (cache == null) {
log.info("锁被释放,停止获取");
return -1L;
@@ -149,13 +150,13 @@ public long singleTask(WebUser webUser) {
if (auctionId == null) {
log.info("获取失败,结束");
- commonCache.delCache(ITEM_TASK_KEY);
+ cacher.remove(ITEM_TASK_KEY);
return -1L;
}
long now = System.currentTimeMillis();
// 上一次的时间
- Long lastAuctionTime = commonCache.getCache(ITEM_TASK_LAST_AUCTION_TIME);
+ Long lastAuctionTime = (Long) cacher.get(ITEM_TASK_LAST_AUCTION_TIME);
// 两次 auction 差值
long subAuction = auctionId - latestAuctionId;
log.info("与上次记录的差值:" + subAuction);
@@ -173,7 +174,7 @@ public long singleTask(WebUser webUser) {
log.info("这是第一次获取,没有上一次获取的时候");
}
- commonCache.setCache(ITEM_TASK_LAST_AUCTION_TIME, now);
+ cacher.set(ITEM_TASK_LAST_AUCTION_TIME, now);
return nextDelayTime;
}
diff --git a/src/main/java/com/xjx/ddtcrawler/test/Test.java b/src/main/java/cn/xiejx/ddtcrawler/test/Test.java
similarity index 67%
rename from src/main/java/com/xjx/ddtcrawler/test/Test.java
rename to src/main/java/cn/xiejx/ddtcrawler/test/Test.java
index 42e8dd5..4a56ff4 100644
--- a/src/main/java/com/xjx/ddtcrawler/test/Test.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/test/Test.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.test;
+package cn.xiejx.ddtcrawler.test;
/**
* @author XJX
diff --git a/src/main/java/com/xjx/ddtcrawler/utils/EncryptedUtils.java b/src/main/java/cn/xiejx/ddtcrawler/utils/EncryptedUtils.java
similarity index 98%
rename from src/main/java/com/xjx/ddtcrawler/utils/EncryptedUtils.java
rename to src/main/java/cn/xiejx/ddtcrawler/utils/EncryptedUtils.java
index 10b5226..9f43568 100644
--- a/src/main/java/com/xjx/ddtcrawler/utils/EncryptedUtils.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/utils/EncryptedUtils.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.utils;
+package cn.xiejx.ddtcrawler.utils;
import org.apache.commons.lang3.StringUtils;
diff --git a/src/main/java/com/xjx/ddtcrawler/utils/ThreadPoolUtil.java b/src/main/java/cn/xiejx/ddtcrawler/utils/ThreadPoolUtil.java
similarity index 95%
rename from src/main/java/com/xjx/ddtcrawler/utils/ThreadPoolUtil.java
rename to src/main/java/cn/xiejx/ddtcrawler/utils/ThreadPoolUtil.java
index 8fb4091..bff0b4b 100644
--- a/src/main/java/com/xjx/ddtcrawler/utils/ThreadPoolUtil.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/utils/ThreadPoolUtil.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.utils;
+package cn.xiejx.ddtcrawler.utils;
import org.springframework.scheduling.concurrent.DefaultManagedAwareThreadFactory;
diff --git a/src/main/java/com/xjx/ddtcrawler/utils/TimeUtil.java b/src/main/java/cn/xiejx/ddtcrawler/utils/TimeUtil.java
similarity index 97%
rename from src/main/java/com/xjx/ddtcrawler/utils/TimeUtil.java
rename to src/main/java/cn/xiejx/ddtcrawler/utils/TimeUtil.java
index a625101..0eafcfb 100644
--- a/src/main/java/com/xjx/ddtcrawler/utils/TimeUtil.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/utils/TimeUtil.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.utils;
+package cn.xiejx.ddtcrawler.utils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.FastDateFormat;
diff --git a/src/main/java/com/xjx/ddtcrawler/vo/MyMessage.java b/src/main/java/cn/xiejx/ddtcrawler/vo/MyMessage.java
similarity index 92%
rename from src/main/java/com/xjx/ddtcrawler/vo/MyMessage.java
rename to src/main/java/cn/xiejx/ddtcrawler/vo/MyMessage.java
index 9c050c2..1e25acf 100644
--- a/src/main/java/com/xjx/ddtcrawler/vo/MyMessage.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/vo/MyMessage.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.vo;
+package cn.xiejx.ddtcrawler.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/src/main/java/com/xjx/ddtcrawler/vo/ResultCode.java b/src/main/java/cn/xiejx/ddtcrawler/vo/ResultCode.java
similarity index 96%
rename from src/main/java/com/xjx/ddtcrawler/vo/ResultCode.java
rename to src/main/java/cn/xiejx/ddtcrawler/vo/ResultCode.java
index ff7050a..09aa9cd 100644
--- a/src/main/java/com/xjx/ddtcrawler/vo/ResultCode.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/vo/ResultCode.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler.vo;
+package cn.xiejx.ddtcrawler.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/src/main/java/com/xjx/ddtcrawler/vo/ResultCodeConstant.java b/src/main/java/cn/xiejx/ddtcrawler/vo/ResultCodeConstant.java
similarity index 78%
rename from src/main/java/com/xjx/ddtcrawler/vo/ResultCodeConstant.java
rename to src/main/java/cn/xiejx/ddtcrawler/vo/ResultCodeConstant.java
index 1e2cee6..dd4086b 100644
--- a/src/main/java/com/xjx/ddtcrawler/vo/ResultCodeConstant.java
+++ b/src/main/java/cn/xiejx/ddtcrawler/vo/ResultCodeConstant.java
@@ -1,4 +1,6 @@
-package com.xjx.ddtcrawler.vo;
+package cn.xiejx.ddtcrawler.vo;
+
+import cn.xiejx.ddtcrawler.exception.MyException;
/**
* @author XJX
@@ -11,7 +13,7 @@ public enum CodeEnum {
*/
SUCCESS(0),
/**
- * 抛出 {@link com.xjx.ddtcrawler.exception.MyException} 时候的返回值
+ * 抛出 {@link MyException} 时候的返回值
*/
COMMON_ERROR(-1),
/**
diff --git a/src/main/java/com/xjx/ddtcrawler/cache/CacheDomain.java b/src/main/java/com/xjx/ddtcrawler/cache/CacheDomain.java
deleted file mode 100644
index 1d20f00..0000000
--- a/src/main/java/com/xjx/ddtcrawler/cache/CacheDomain.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.xjx.ddtcrawler.cache;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serial;
-import java.io.Serializable;
-
-/**
- * @author XJX
- * @date 2021/8/7 17:36
- */
-@Data
-@NoArgsConstructor
-@AllArgsConstructor
-public class CacheDomain implements Serializable {
- @Serial
- private static final long serialVersionUID = -1617868566077296126L;
-
- private Object object;
- private Long expireAt;
-
- public boolean isExpired() {
- if (expireAt == null) {
- return false;
- }
- return expireAt < System.currentTimeMillis();
- }
-}
diff --git a/src/main/java/com/xjx/ddtcrawler/cache/CacheInterface.java b/src/main/java/com/xjx/ddtcrawler/cache/CacheInterface.java
deleted file mode 100644
index f0fe819..0000000
--- a/src/main/java/com/xjx/ddtcrawler/cache/CacheInterface.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.xjx.ddtcrawler.cache;
-
-/**
- * @author XJX
- * @date 2021/8/21 17:37
- */
-public interface CacheInterface {
- /**
- * 清理过期的
- */
- void clearExpired();
-}
diff --git a/src/main/java/com/xjx/ddtcrawler/cache/CommonCache.java b/src/main/java/com/xjx/ddtcrawler/cache/CommonCache.java
deleted file mode 100644
index 0dbeca7..0000000
--- a/src/main/java/com/xjx/ddtcrawler/cache/CommonCache.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.xjx.ddtcrawler.cache;
-
-import org.apache.commons.collections4.MapUtils;
-import org.springframework.stereotype.Component;
-
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * @author XJX
- * @date 2021/8/7 17:33
- */
-@Component
-public class CommonCache implements CacheInterface {
- private final Map CACHE_MAP = new ConcurrentHashMap<>();
-
- public void setCache(String key, Object value, Long expireTime) {
- if (value == null) {
- return;
- }
- Long expireAt = null;
- if (expireTime != null) {
- expireAt = System.currentTimeMillis() + expireTime;
- }
- CacheDomain cacheDomain = new CacheDomain(value, expireAt);
- CACHE_MAP.put(key, cacheDomain);
- }
-
- public void setCache(String ket, Object value) {
- setCache(ket, value, null);
- }
-
- public void delCache(String key) {
- CACHE_MAP.remove(key);
- }
-
- @SuppressWarnings({"unchecked"})
- public T getCache(String key) {
- CacheDomain cacheDomain = CACHE_MAP.get(key);
- if (cacheDomain == null) {
- return null;
- }
-
- Long expireAt = cacheDomain.getExpireAt();
- if (expireAt != null && expireAt < System.currentTimeMillis()) {
- CACHE_MAP.remove(key);
- return null;
- }
- Object cache = cacheDomain.getObject();
- try {
- return (T) cache;
- } catch (Exception e) {
- return null;
- }
- }
-
- @Override
- public void clearExpired() {
- if (MapUtils.isEmpty(CACHE_MAP)) {
- return;
- }
-
- CACHE_MAP.values().removeIf(CacheDomain::isExpired);
- }
-}
diff --git a/src/main/java/com/xjx/ddtcrawler/cache/WebUserCache.java b/src/main/java/com/xjx/ddtcrawler/cache/WebUserCache.java
deleted file mode 100644
index 431bfc5..0000000
--- a/src/main/java/com/xjx/ddtcrawler/cache/WebUserCache.java
+++ /dev/null
@@ -1,94 +0,0 @@
-package com.xjx.ddtcrawler.cache;
-
-import com.xjx.ddtcrawler.cookie.WebUser;
-import org.apache.commons.collections4.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.stereotype.Component;
-
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * @author XJX
- * @date 2021/8/1 22:56
- */
-@Component
-public class WebUserCache implements CacheInterface {
- private final static Map MAP = new ConcurrentHashMap<>();
-
- public WebUser getById(String id) {
- if (id == null) {
- return null;
- }
- WebUser webUser = MAP.get(id);
- if (webUser == null) {
- return null;
- }
-
- Long expireTimeAt = webUser.getExpireAt();
- if (expireTimeAt != null) {
- if (System.currentTimeMillis() > expireTimeAt) {
- MAP.remove(id);
- return null;
- }
- }
- return webUser;
- }
-
- /**
- * 入参 userId、key、expireTime,
- *
- * @param webUser webUser
- */
- public String saveUser(WebUser webUser) {
- if (webUser == null) {
- return null;
- }
-
- Long userId = webUser.getUserId();
- String key = webUser.getKey();
- Long expireTimeAt = webUser.getExpireAt();
- if (userId == null || StringUtils.isBlank(key)) {
- return null;
- }
-
- // id 可能会有
- String id = webUser.getId();
- if (StringUtils.isBlank(id)) {
- // 如果没有的话,表示第一次使用
- long loginTime = System.currentTimeMillis();
- webUser.setLoginTime(loginTime);
- id = webUser.getId();
- }
-
- // 如果设置了过期时间
- if (expireTimeAt != null) {
- if (expireTimeAt < System.currentTimeMillis()) {
- if (id != null) {
- MAP.remove(id);
- }
- return null;
- }
- }
-
- MAP.put(id, webUser);
- return id;
- }
-
- public void delete(String id) {
- if (StringUtils.isBlank(id)) {
- return;
- }
-
- MAP.remove(id);
- }
-
- @Override
- public void clearExpired() {
- if (MapUtils.isEmpty(MAP)) {
- return;
- }
-
- MAP.values().removeIf(CacheDomain::isExpired);
- }
-}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 800186c..3545af1 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -11,15 +11,13 @@ spring:
connection-test-query: SELECT 1
connection-timeout: 10000
minimum-idle: 2
- jpa:
- show-sql: true
-#showSql
logging:
level:
- com:
- xjx:
- mapper: debug
+ cn:
+ xiejx:
+ ddtcrawler:
+ mapper: debug
# 自定义配置
mysql:
diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..25edde0
--- /dev/null
+++ b/src/main/resources/logback-spring.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/logging.xml b/src/main/resources/logging.xml
deleted file mode 100644
index 07c58f7..0000000
--- a/src/main/resources/logging.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
- %xwEx
- %5p
- yyyy-MM-dd HH:mm:ss.SSS
- %clr{%d{${sys:LOG_DATEFORMAT_PATTERN}}}{faint} %clr{${sys:LOG_LEVEL_PATTERN}} %clr{%pid}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%-40.40c{1.}}{cyan} %clr{:}{faint} %m%n${sys:LOG_EXCEPTION_CONVERSION_WORD}
- %d{${sys:LOG_DATEFORMAT_PATTERN}} ${sys:LOG_LEVEL_PATTERN} %pid --- [%t] %-40.40c{1.} : %m%n${sys:LOG_EXCEPTION_CONVERSION_WORD}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/test/java/com/xjx/ddtcrawler/DdtCrawlerApplicationTests.java b/src/test/java/cn/xiejx/ddtcrawler/DdtCrawlerApplicationTests.java
similarity index 87%
rename from src/test/java/com/xjx/ddtcrawler/DdtCrawlerApplicationTests.java
rename to src/test/java/cn/xiejx/ddtcrawler/DdtCrawlerApplicationTests.java
index 7a27da9..6d4801a 100644
--- a/src/test/java/com/xjx/ddtcrawler/DdtCrawlerApplicationTests.java
+++ b/src/test/java/cn/xiejx/ddtcrawler/DdtCrawlerApplicationTests.java
@@ -1,4 +1,4 @@
-package com.xjx.ddtcrawler;
+package cn.xiejx.ddtcrawler;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;