build: continew-starter 2.14.0 => 2.15.0

1.适配 cs Knife4j 替换为 NextDoc4j 1.1.5
2.适配 cs continew-starter-auth-justauth
3.cs DataPermission 注解增加缓存处理,缓存 Mapper 接口方法上携带 DataPermission 的值
4.cs 修复开启 SSL 后,mail.host 不被 JDK 信任的问题
5.cs EnumValue 比较枚举值时,不再区分大小写
6.cs 依赖全面升级 spring-boot 3.3.12 => 3.4.10,snail-job 1.5.0 => 1.8.0
This commit is contained in:
2025-12-28 22:40:17 +08:00
parent 9776dfbf31
commit c1a0eb165f
23 changed files with 558 additions and 616 deletions

View File

@@ -17,11 +17,11 @@
package top.continew.admin;
import cn.dev33.satoken.annotation.SaIgnore;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.net.NetUtil;
import cn.hutool.core.util.URLUtil;
import cn.hutool.extra.spring.SpringUtil;
import com.alicp.jetcache.anno.config.EnableMethodCache;
import com.github.xiaoymin.knife4j.spring.configuration.Knife4jProperties;
import io.swagger.v3.oas.annotations.Hidden;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -35,10 +35,12 @@ import org.springframework.boot.autoconfigure.web.ServerProperties;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import top.continew.starter.core.ContiNewStarterVersion;
import top.continew.starter.core.autoconfigure.application.ApplicationProperties;
import top.continew.starter.extension.crud.annotation.EnableCrudApi;
import top.continew.starter.web.annotation.EnableGlobalResponse;
import top.continew.starter.web.model.R;
import top.nextdoc4j.core.configuration.NextDoc4jProperties;
/**
* 启动程序
@@ -61,7 +63,9 @@ public class ContiNewAdminApplication implements ApplicationRunner {
private final ServerProperties serverProperties;
public static void main(String[] args) {
SpringApplication.run(ContiNewAdminApplication.class, args);
SpringApplication application = new SpringApplication(ContiNewAdminApplication.class);
application.setDefaultProperties(MapUtil.of("continew-starter.version", ContiNewStarterVersion.getVersion()));
application.run(args);
}
@Hidden
@@ -79,13 +83,13 @@ public class ContiNewAdminApplication implements ApplicationRunner {
String baseUrl = URLUtil.normalize("%s:%s%s".formatted(hostAddress, port, contextPath));
log.info("--------------------------------------------------------");
log.info("{} server started successfully.", applicationProperties.getName());
log.info("ContiNew Starter: v{} (Spring Boot: v{})", SpringUtil
.getProperty("application.starter"), SpringBootVersion.getVersion());
log.info("ContiNew Starter: v{} (Spring Boot: v{})", ContiNewStarterVersion.getVersion(), SpringBootVersion
.getVersion());
log.info("当前版本: v{} (Profile: {})", applicationProperties.getVersion(), SpringUtil
.getProperty("spring.profiles.active"));
log.info("服务地址: {}", baseUrl);
Knife4jProperties knife4jProperties = SpringUtil.getBean(Knife4jProperties.class);
if (!knife4jProperties.isProduction()) {
NextDoc4jProperties docProperties = SpringUtil.getBean(NextDoc4jProperties.class);
if (!docProperties.isProduction()) {
log.info("接口文档: {}/doc.html", baseUrl);
}
log.info("吐槽广场: https://continew.top/docs/admin/issue-hub.html");
@@ -94,4 +98,4 @@ public class ContiNewAdminApplication implements ApplicationRunner {
log.info("ContiNew Admin: 持续迭代优化的,高质量多租户中后台管理系统框架");
log.info("--------------------------------------------------------");
}
}
}

View File

@@ -5,5 +5,5 @@
\____|\___/ |_| |_| \__||_||_| \_| \___| \_/\_/ /_/ \_\\__,_||_| |_| |_||_||_| |_|
:: ${application.name} :: v${application.version} (Profile: ${spring.profiles.active})
:: ContiNew Starter :: v${application.starter}
:: ContiNew Starter :: v${continew-starter.version}
:: Spring Boot :: v${spring-boot.version}

View File

@@ -213,29 +213,8 @@ continew-starter.messaging.websocket:
# 配置允许跨域的域名
allowed-origins: '*'
--- ### Sa-Token 扩展配置
sa-token.extension:
# 安全配置:排除(放行)路径配置
security.excludes:
- /error
# 静态资源
- /*.html
- /*/*.html
- /*/*.css
- /*/*.js
- /websocket/**
# 接口文档相关资源
- /favicon.ico
- /doc.html
- /webjars/**
- /swagger-ui/**
- /swagger-resources/**
- /*/api-docs/**
# 本地存储资源
- /file/**
--- ### Just Auth 配置
justauth:
continew-starter.justauth:
enabled: true
type:
WECHAT_OPEN:
@@ -253,6 +232,28 @@ justauth:
cache:
type: REDIS
--- ### Sa-Token 扩展配置
sa-token.extension:
# 安全配置:排除(放行)路径配置
security.excludes:
- /error
# 静态资源
- /*.html
- /*/*.html
- /*/*.css
- /*/*.js
- /websocket/**
# 接口文档相关资源
- /favicon.ico
- /doc.html
- /nextdoc/**
- /webjars/**
- /swagger-ui/**
- /swagger-resources/**
- /*/api-docs/**
# 本地存储资源
- /file/**
--- ### Snail Job 配置
snail-job:
enabled: false

View File

@@ -97,7 +97,7 @@ jetcache:
--- ### 接口文档配置
## 接口文档增强配置
knife4j:
nextdoc4j:
# 开启生产环境屏蔽
production: ${application.production}
@@ -222,22 +222,8 @@ continew-starter.messaging.websocket:
allowed-origins:
- ${application.url}
--- ### Sa-Token 扩展配置
sa-token.extension:
# 安全配置:排除(放行)路径配置
security.excludes:
- /error
# 静态资源
- /*.html
- /*/*.html
- /*/*.css
- /*/*.js
- /websocket/**
# 本地存储资源
- /file/**
--- ### Just Auth 配置
justauth:
continew-starter.justauth:
enabled: true
type:
WECHAT_OPEN:
@@ -255,6 +241,20 @@ justauth:
cache:
type: REDIS
--- ### Sa-Token 扩展配置
sa-token.extension:
# 安全配置:排除(放行)路径配置
security.excludes:
- /error
# 静态资源
- /*.html
- /*/*.html
- /*/*.css
- /*/*.js
- /websocket/**
# 本地存储资源
- /file/**
--- ### Snail Job 配置
snail-job:
# 客户端地址(默认自动获取本机 IP

View File

@@ -7,7 +7,6 @@ application:
description: 持续迭代优化的前后端分离中后台管理系统框架,开箱即用,持续提供舒适的开发体验。
# 版本
version: 4.2.0-SNAPSHOT
starter: 2.14.0
# 基本包
base-package: top.continew.admin
## 作者信息配置
@@ -123,15 +122,29 @@ springdoc:
name: ${sa-token.token-name}
scheme: ${sa-token.token-prefix}
## 接口文档增强配置
knife4j:
enable: true
setting:
# 是否显示默认的 footer默认 true显示
enable-footer: false
# 是否自定义 footer默认 false非自定义
enable-footer-custom: true
# 自定义 footer 内容,支持 Markdown 语法
footer-custom-content: 'Copyright © 2022-present [${application.contact.name}](${application.contact.url}) ⋅ [${application.name}](${application.url}) v${application.version}'
nextdoc4j:
# 启用开关
enabled: true
# 扩展配置
extension:
# 扩展开关
enabled: true
# 品牌配置
brand:
# logo 展示
logo: classpath:favicon.ico
# 标题
title: ${application.name}
# 自定义 footer 内容
footer-text: 'Copyright © 2022-present [${application.contact.name}](${application.contact.url}) ⋅ [${application.name}](${application.url}) v${application.version}'
# 插件配置
plugin:
# 枚举展示开关
enum:
enabled: true
# 认证展示和 sa-token 权限码展示开关
security:
enabled: true
--- ### 全局响应配置
continew-starter.web.response: