基于 SpringBoot 3.5.6 开发的 Java 后端后台管理业务基础框架,常用的业务功能已经集成,开箱即用,相关使用说明,可以参考:
主要更新
3.5.1 将兼容使用 Gradle 管理项目,随着项目的体积越来越大,模块越来越多,在传统的 Maven 项目中,无论是编译或是打包运行,都让项目变得越来越缓慢,所以引入了 Gradle 的项目配置,新项目直接选择使用 Gradle 管理就行了,如果是老项目升级,可以参考:Maven 项目迁移到 Gradle
基于 SpringBoot 3.5.6 开发的 Java 后端后台管理业务基础框架,常用的业务功能已经集成,开箱即用,相关使用说明,可以参考:
3.5.1 将兼容使用 Gradle 管理项目,随着项目的体积越来越大,模块越来越多,在传统的 Maven 项目中,无论是编译或是打包运行,都让项目变得越来越缓慢,所以引入了 Gradle 的项目配置,新项目直接选择使用 Gradle 管理就行了,如果是老项目升级,可以参考:Maven 项目迁移到 Gradle
在实际项目中,我们需要保存文件,比如用户上传的头像,或者上传的文档,一般不会保存到数据库中,而是保存到文件系统,比如本地文件系统,或者云存储。文件服务整合本地文件系统、阿里云OSS、MinIO、FastDFS,提供统一的接口操作文件的上传和下载删除操作,开发者后续也可以自行实现接口扩展。
提示
在实际开发中,如果没有统一的文件服务(如 MinIO),可以修改 taybct.file.type 为 local,直接本地开发就行了,到了生产环境,再修改为 minio或者其他文件服务,减少资源占用,毕竟我们要的是逻辑正确,而不是实现细节不同
除了已经集成的 RPC 框架(Spring Cloud OpenFeign、Apache Dubbo)之外,也提供了消息队列的解决方案,比如 Kafka、RabbitMQ 等。
基于 SpringBoot 3.2.5 开发的 Java 后端后台管理业务基础框架,常用的业务功能已经集成,开箱即用,相关使用说明,可以参考:
if (field.isAnnotationPresent(TableFieldJSON.class) && ObjectUtil.isNotEmpty(fieldValue))
/**
* 检测文件是否为空
*
* @param wordFile 文件
*/
private static void checkWordFileEmpty(MultipartFile wordFile){
if (isWordFileEmpty(wordFile)){
throw new FileUploadException("上传文件不能为空");
}
}
import org.ehcache.impl.internal.concurrent.ConcurrentHashMap;
修改为
import java.util.concurrent.ConcurrentHashMap;
top - 17:25:51 up 13 days, 6 min, 3 users, load average: 0.00, 0.00, 0.00
Tasks: 110 total, 2 running, 108 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.0 sy, 0.0 ni, 99.7 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 1613.1 total, 143.8 free, 817.9 used, 819.9 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 795.2 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
87183 root 20 0 3039528 505164 29056 S 1.0 30.6 1:59.76 java
total used free shared buff/cache available
Mem: 1.6Gi 817Mi 143Mi 2.6Mi 819Mi 795Mi
Swap: 0B 0B 0B
基于 SpringBoot 3.2.5 开发的 Java 后端后台管理业务基础框架,常用的业务功能已经集成,开箱即用,相关使用说明,可以参考:
工具包
框架
taybct:
secure:
auth:
login-page:
# 开启重定向到登录页面
redirect: true
# 登录页面
redirect-login-page: https://127.0.0.1/#/login
# 登录页面登录成功之后用于获取 code 的接口地址
params-redirect-api: https://127.0.0.1/api/auth/oauth/authorize
# 前端获取参数需要加密的 url 加密类型
params-redirect-api-encode-type: uri_component
POM依赖,Spring Gateway是基于WebFlux的,不需要用到UndertowBUGmeta信息MyBatisX模板
Pure Admin的前端模板便捷性
websocket reactive 路径匹配,类似 @ServerEndpoint,但是这个注解是在 WebFlux 里面使用的
可以查看这个示例:exp-websocket-reactive
相关信息
对于数据库表的增删改查,这里封装了通用的抽象类,方便后续业务开发,这里,主要封装了通用的增删改查方法,以及通用的分页查询方法
基础实体类,包含主键、创建时间、更新时间、创建人、更新人五个基础字段,以及一个非数据库扩展字段expansion用于扩展数据传输等
可以在需要启动运行的模块里面添加这个依赖
<!--启动模块-->
<dependency>
<groupId>io.github.mangocrisp</groupId>
<artifactId>spring-taybct-tool-launch</artifactId>
</dependency>