root
|
d5b97b82a0
|
升级剩余依赖并将 HttpClient 4 迁移到 5
- HttpClient 4.5.14 -> httpclient5 5.6.4(Boot 4.1.1 托管版本):
HttpClient 4.x 最后一次发布是 2022-11,已 EOL,且 Boot 自 3.1 起不再管理它;
httpmime 一并移除(httpclient5 已内置 multipart)。
代码迁移 3 个文件(LocalService、SubscriptionRefreshService、GalleryUtil):
包名 org.apache.http.* -> org.apache.hc.client5.http.*;HttpClient 5 用
response.getCode() 取代 response.getStatusLine().getStatusCode();
RequestConfig 的 socket 读超时改名 setSocketTimeout -> setResponseTimeout,
超时参数改为 Timeout.ofMilliseconds(...)。
MultipartEntityBuilder/EntityBuilder 仍在,仅换包名,行为不变。
- java-telegram-bot-api 7.9.1 -> 10.1.0(跨 3 个大版本)。本项目只用到
new TelegramBot(token)、new SendMessage(chatId, text)、bot.execute(msg),
已核对 10.1.0 的构造器与 execute 签名均兼容。
- hutool-all 5.8.26 -> 5.8.47;commons-compress 1.26.1 -> 1.28.0。
验证:mvn test 16 项全过(注意单测对 HTTP 是 mock,不能证明迁移后的真实网络路径);
另外做了针对性验证——隔离实例上 POST /personal/subBind/accounts/1/refresh 触发
真实上游下载,经迁移后的 httpclient5 成功取回 127,379 字节订阅并写入隔离缓存目录
(生产目录未被触碰);另用等价配置的 httpclient5 客户端实拉 https://example.com
返回 200 且正文可读。启动 5.09s、各接口正常、日志无 httpclient 相关异常。
|
2026-09-14 14:23:23 +08:00 |
|
root
|
4623fca8b0
|
升级到 Spring Boot 4.1.1 并迁移 Jackson 3
- 父 POM 3.3.2 -> 4.1.1;spring-boot-starter-web 改名为 webmvc;
mybatis-spring-boot-starter(-test) 3.0.3 -> 4.1.0(对标 Boot 4)。
- Jackson 2 -> 3:databind/core 包名改为 tools.jackson.*(注解仍在
com.fasterxml.jackson.annotation,无需改动)。Boot 4 移除了
JsonProcessingException,PersonalController.ip() 实际不抛该异常,去掉声明。
- @ServletComponentScan 迁移到 org.springframework.boot.web.server.servlet.context。
- 顺带修复无 Boot 关联的漏洞:jsoup 1.15.3 -> 1.23.2(CVE-2026-71497)、
commons-io -> 2.22.0(CVE-2024-47554)、lombok 对齐托管版 1.18.46。
- native-maven-plugin 0.10.3 -> 1.1.8(Boot 4.1.1 托管版本)。
注意:原生构建仍需 GraalVM/JDK 25,本次仅验证 JVM 运行。
验证:mvn test 16 项全过;隔离冒烟(真实库副本、独立端口)通过——
Tomcat 11 启动 4.5s、/ 302、/GalleryManage 200、订阅分发 /sub/v2|cat 字节数与
3.x 一致、WebSocket 升级 101、@ServletComponentScan 过滤器生效、
与 storageNode 的 Jackson 2.15.2 线上格式双向兼容。
|
2026-09-14 13:44:03 +08:00 |
|
root
|
f5ef8ca487
|
修复测试构造与 commons-io 版本不匹配
- RemoteServiceTest 原先调用 ResponseMessage(int, byte),主源码中不存在该构造器,
导致测试源码无法编译;改为在测试内用 setter 组装。
- commons-compress 1.26.1 依赖 commons-io 2.15.1 的 IOUtils.skip(InputStream,long,Supplier),
而 POM 钉在 2.11.0,任何 tar 读取都会抛 NoSuchMethodError;commons-io 升至 2.15.1
(同时覆盖 CVE-2024-47554)。
后端 mvn test 16 项、storageNode 5 项、桌面前端 9 项全部通过。
|
2026-09-14 13:36:45 +08:00 |
|
root
|
72f8ab597a
|
移除 G1 垃圾回收器配置
|
2026-07-11 14:29:47 +08:00 |
|
lion
|
2f10d7a868
|
refactor: 规范化代码 — 线程安全、日志、资源泄漏、敏感配置、命名、Lombok
- 线程安全: ArrayList→CopyOnWriteArrayList, HashMap→ConcurrentHashMap+synchronized→computeIfAbsent
- 日志规范: 22处println→SLF4J, 20处printStackTrace→log.error, 空catch加入log.warn
- 资源泄漏: CloseableHttpClient提取为static单例复用TCP连接
- 敏感配置: Bot Token/Cookie/IP/订阅URL移至application.yaml+@Value注入
- 命名规范: *ServiceImpl→*Service去除误导Impl后缀
- API设计: Response.getResult()→getData(),旧方法标@Deprecated兼容
- 构造器注入: 全部替换为Lombok @RequiredArgsConstructor,init逻辑→@PostConstruct
- 依赖: Lombok 1.18.30→1.18.40支持JDK25,新增maven-compiler-plugin注解处理器路径
|
2026-06-06 18:26:19 +08:00 |
|
chuzhongzai
|
e8cc4b1097
|
更新打包固件;流量倍率过滤改为2倍;修复缩略图加载失败;更新e站搜索参数
|
2024-11-03 15:02:49 +08:00 |
|
chuzhongzai
|
325b9b321f
|
在线预览相关图片由webp格式换成avif,优化部分代码
|
2024-09-16 16:40:00 +08:00 |
|
chuzhongzai
|
25cd6d73b6
|
新增发送消息接口
|
2024-08-20 17:09:24 +08:00 |
|
chuzhongzai
|
0cc583b910
|
升级springboot版本
|
2024-08-19 18:48:03 +08:00 |
|
chuzhongzai
|
c31b3ff5f0
|
ip地址信息由查询本地文件改为访问ip138
|
2024-01-14 16:23:29 +08:00 |
|
chuzhongzai
|
1516226192
|
前端获取任务进度方式由轮询改为Websocket;去除无用任务状态;
|
2023-12-28 16:07:22 +08:00 |
|
chuzhongzai
|
07b5b1c376
|
删除多余代码
|
2023-12-27 18:02:40 +08:00 |
|
chuzhongzai
|
34f8cb73b2
|
使用AOT;去除thymeleaf;移动前端文件路径
|
2023-12-16 01:01:32 +08:00 |
|
chuzhongzai
|
a7bfe1df29
|
订阅更新记录新增地址
|
2023-12-08 14:58:24 +08:00 |
|
chuzhongzai
|
a3b79fc0ea
|
新增订阅绑定;使用单例ObjectMapper;
|
2023-12-01 15:28:01 +08:00 |
|
chuzhongzai
|
39e4e606b0
|
修改依赖注入方式,改为构造函数注入;更新依赖;
|
2023-11-25 15:31:38 +08:00 |
|
chuzhongzai
|
32d98b3d84
|
添加保活信息;添加tg机器人,推送关键事件;
|
2023-09-02 15:19:29 +08:00 |
|
chuzhongzai
|
59fde72a18
|
第一个版本
|
2023-07-30 17:53:03 +08:00 |
|