1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zhangbinhub-acp

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Application Construction Platform (ACP)

Maven central Spring Boot Spring Cloud Spring Cloud Alibaba Solon Kotlin Jvm Gradle License Security Status

v2025.3.0 版本更新日志

简介

致力于对业内主流的开源框架进行整合,达到方便易用快速开发的目的。

  • 使用Kotlin语言开发;
  • 这不是个新轮子,而是组装各种优秀轮子;
  • 该项目旨在对业内各组件框架进行封装整合的脚手架,方便进行业务开发;
  • 使用该脚手架可快速开发基于Kotlin或Java语言的单体应用、Cloud应用;
  • 本人会密切关注业界最新动态,并使用最新技术持续更新优化;

版本说明

  • v2021.0.1.0 开始,版本号命名规范改变,前三位大版本号与所使用的SpringCloud版本号一致,第三位小版本号迭代更新,同时将发布至Maven Central
  • v2021.0.4.3 开始,仅支持java 11版本,不再提供java 1.8版本
    • tips: 如需java 1.8版本,自行下载源码编译,project.properties中修改为javaVersion=1.8
  • v2022.0.0.0 开始,最低要求java 17版本
  • v2022.0.4.x 最后一个版本为2022.0.4.6,不再有2022.0.5.x版本,之前的2022.0.5.0-Mx 预览版内容已全部合并进入2022.0.4.6
  • v2024.0.0 开始,适配Solon ,版本号命名规范改变:第1位版本号为发布时的年度,第2位版本号为功能更新,第3位版本号为bug修复及依赖更新
Acp Spring Cloud Spring Boot Alibaba Spring Boot Solon JVM 新特性
2025.3.x 2024.0.1 2023.0.3.2 3.4.x 3.2.x 17+
2025.2.x 2024.0.1 2023.0.3.2 3.4.x 3.1.x 17+
  • 新增模块acp-solon-boot-warm-flow-mybatis-flex,使warm-flow-mybatis-flex适配solon 3
2025.1.x 2024.0.0 2023.0.3.2 3.4.x 3.1.x 17+
2025.0.x 2024.0.0 2023.0.3.2 3.4.x 3.0.x 17+
2024.3.x 2023.0.4 2023.0.3.2 3.3.x 3.0.x 17+
  • Kotlin 2.1.0
2024.2.x 2023.0.3 2023.0.1.3 3.3.x 3.0.x 17+
  • acp-spring-cloud-starter取消基于nacos的负载均衡器,SBA 2023.0.1.3已支持自定义服务过滤和负载均衡算法
2024.1.x 2023.0.3 2023.0.1.2 3.3.x 3.0.x 17+
2024.0.x 2023.0.3 2023.0.1.2 3.3.x 2.9.x 17+
  • BaseInitialization变更为AcpInitialization
  • 适配Solon
  • 调整工程结构
  • 去除Excel工具类,如有需要推荐使用EasyExcel
  • 调整依赖管理
  • 新增NetTools工具类
  • 新增uuid-creator依赖,替换JDK自带UUID生成
2023.0.3.x 2023.0.3 2023.0.1.2 3.3.x - 17+
  • acp-core-common去除定时任务相关实现
  • 日期时间处理方法统一移入CalendarTools
  • 去除BaseProperties抽象类
  • 日志适配器接口由io.gitee.zhangbinhub.acp.boot.interfaces.LogAdapter调整为io.gitee.zhangbinhub.acp.boot.log.LogAdapter
  • 可控监听器接口由io.gitee.zhangbinhub.acp.boot.interfaces.Listener调整为io.gitee.zhangbinhub.acp.boot.listener.AcpListener
2023.0.2.x 2023.0.2 2023.0.1.0 3.3.x - 17+
  • acp-spring-cloud-starter重写基于nacos的负载均衡器,支持自定义服务过滤和负载均衡策略
2023.0.1.x 2023.0.1 2023.0.1.0 3.2.x - 17+
  • acp-core-common去除xml配置基类BaseXml
2023.0.0.x 2023.0.0 2023.0.0.0-RC1 3.2.x - 17+
  • 移除模块acp-core-client
  • RestClient替换RestTemplate
  • hc5替换OKHttp
2022.0.4.x 2022.0.4 2022.0.0.0 3.1.x - 17+
  • 新增国密SM2/SM3/SM4
  • 优化加解密工具类
  • 新增WebSocket服务端与客户端
  • 动态热更新定时任务
2022.0.3.x 2022.0.3 2022.0.0.0 3.1.x - 17+
  • 调整工程结构
  • 重写自定义异常处理
  • 兼容WebFlux
2022.0.2.x 2022.0.2 2022.0.0.0-RC2 3.1.x - 17+
  • xml支持
  • 新增acp-spring-cloud-starter-resource-server
2022.0.1.x 2022.0.1 2022.0.0.0-RC1 3.0.x - 17+
2021.0.5.x 2021.0.5 2021.0.4.x 2.7.x - 1.8+
2021.0.4.x 2021.0.4 2021.0.4.x 2.7.x - 1.8+
2021.0.3.x 2021.0.3 2021.0.1.x 2.7.x - 1.8+
2021.0.2.x 2021.0.2 2021.0.1.x 2.6.x - 1.8+
2021.0.1.x 2021.0.1 2021.0.1.x 2.6.x - 1.8+
6.7.x 2020.0.4 2.2.x.RELEASE 2.5.x - 1.8+
6.6.x 2020.0.3 2.2.x.RELEASE 2.5.x - 1.8+
6.5.x 2020.0.0~2020.0.2 2.2.x.RELEASE 2.4.x - 1.8+

技术栈

分类 组件 Spring技术栈 Solon技术栈
构建工具 - Gradle 8.6+ Gradle 8.6+
开发语言 JVM 17+ 17+
Java 17+ 17+
Kotlin 2.1+ 2.1+
Core 日期时间处理 Joda Time Joda Time
UUID uuid-creator uuid-creator
加解密库 bouncycastle bouncycastle
PDF处理 itextpdf
html2pdf
itextpdf
html2pdf
文件压缩 Zip4j Zip4j
Boot WEB服务 Undertow solon.boot.smarthttp(国产)
http工具类 RestClient
WebClient
solon.net.httputils(国产)
日志框架 slf4j
logback
slf4j
solon.logging.logback
Json处理 Jackson Snack3(国产)
solon.serialization.snack3
Xml处理 Jackson Jackson
solon.serialization.jackson.xml
ORM框架 按需引入,例如:Hibernate (JPA) 按需引入,例如:MyBatis-Flex
Api文档 Knife4j(国产)
Openapi3
Knife4j(国产)
solon-openapi2-knife4j
安全框架 Spring Security Sa-Token(国产)
资源服务 spring-boot-starter-oauth2-resource-server sa-token-solon-plugin(国产)
sa-token-oauth2
认证服务 spring-boot-starter-oauth2-authorization-server sa-token-solon-plugin(国产)
sa-token-oauth2
认证协议 Oauth 2.0/2.1 Oauth 2.0
WebSocket spring-boot-starter-websocket solon.boot.smarthttp(国产)
java-websocket-ns
TCP/UDP Netty Netty
校验 spring-boot-starter-validation solon.validation(国产)
Redis spring-boot-starter-data-redis
spring-boot-starter-data-redis-reactive
redisson-solon-plugin(国产)
Cloud 监控 spring-boot-admin-server solon-admin-server(国产)
注册中心 Nacos(国产)
spring-cloud-starter-alibaba-nacos-discovery
Nacos(国产)
nacos2-solon-cloud-plugin
配置中心 Nacos(国产)
spring-cloud-starter-alibaba-nacos-config
Nacos(国产)
nacos2-solon-cloud-plugin
熔断/限流 Sentinel(国产)
spring-cloud-starter-alibaba-sentinel
sentinel-datasource-nacos
Sentinel(国产)
sentinel-solon-cloud-plugin
服务间调用 spring-cloud-starter-openfeign
feign-hc5
nami
负载均衡 spring-cloud-starter-loadbalancer CloudLoadBalance(国产)
消息总线 Kafka
spring-cloud-starter-stream-kafka
spring-cloud-stream-binder-kafka-streams
spring-cloud-starter-bus-kafka
Solon Cloud Event(国产)
Kafka
kafka-solon-cloud-plugin
日志收集 Kafka
spring-cloud-starter-stream-kafka
spring-cloud-stream-binder-kafka-streams
Solon Cloud Event(国产)
Kafka
kafka-solon-cloud-plugin
网关 spring-cloud-starter-gateway solon-cloud-gateway(国产)
分布式锁 没有默认集成,自定义实现io.gitee.zhangbinhub.acp.cloud.lock.DistributedLock接口即可 没有默认集成,自定义实现io.gitee.zhangbinhub.acp.cloud.lock.DistributedLock接口即可
链路追踪 按需引入,例如:opentelemetry 按需引入,例如:jaeger-solon-cloud-plugin

一、gradle 脚本配置及使用

(一)配置文件

1.gradle/dependencies.gradle

定义外部依赖版本号

2.gradle/globalTask.gradle

全局自定义任务配置,适用于顶层项目

3.gradle/commonTask.gradle

公共自定义任务配置,适用于所有项目模块

4.gradle/publishJar.gradle

发布任务配置,适用于jar项目模块

5.gradle/publishPom.gradle

发布任务配置,适用于pom项目模块

6.spring-app.gradle

Spring Application 配置,适用于spring技术栈应用模块

7.solon-app.gradle

Spring Application 配置,适用于solon技术栈应用模块

8.settings.gradle

定义项目/模块结构

9.project.properties

gradle全局参数:

  • gradleVersion:gradle版本号
  • group:对应打包时的最外层groupid,最终的groupid还会加上模块路径,例如groupid.acp
  • version:版本号
  • encoding:编译字符集
  • mavenCentralUrl:maven中央仓库地址
  • javaVersion:jdk版本号
10.build.gradle

公共构建脚本

11.模块根路径/build.gradle

单个模块特有的构建脚本

(二)自定义任务

  • 全局自定义任务
    • publishAll 发布所有构建至maven中央仓库,linux系统适用
    • publishToMavenLocalAll 发布所有构建至maven本地仓库,linux系统适用
  • 公共自定义任务
    • clearPj 清理所有输出文件
    • release 编译、打包并输出
      • 如需编译打包对应环境,命令中使用参数 active,例如
      gradlew project:release -Pactive=test

(三)发布至maven仓库

发布至本地仓库
  • 执行 publishToMavenLocal 任务

(四)升级命令

gradlew wrapper --gradle-distribution-url=https://mirrors.cloud.tencent.com/gradle/gradle-8.13-all.zip

二、工程结构

acp(root)                 -------工程根目录,root模块
  ├─ doc                  -------公共文档
  ├─ excample             -------测试模块根目录
  │    ├─ solon-cloud     -------Solon Cloud 测试模块
  │    ├─ spring-cloud    -------Spring Cloud 测试模块
  │    ├─ testkotlin      -------单体 Spring Boot Kotlin 测试模块
  │    ├─ testreactive    -------单体 Spring Boot WebFlux 测试模块
  │    └─ testspringboot  -------单体 Spring Boot 测试模块
  │    └─ testsolon       -------单体 Solon Boot 测试模块
  ├─ gradle               -------gradle脚本
  └─ modules              -------子模块路径
       ├─ core            -------核心模块
       ├─ dependency      -------依赖模块
       └─ solon           -------Solon Boot 和 Solon Cloud 适配模块
       └─ spring          -------Spring Boot 和 Spring Cloud 适配模块

三、模块说明

groupId: io.gitee.zhangbinhub.acp

1、依赖管理

位置:modules/dependency

2、核心模块

位置:modules/core

3、Spring技术栈模块

位置:modules/spring

4、Solon技术栈模块

位置:modules/solon

四、打包为 docker 镜像

  • 打包:buildImage
  • 打包并上传:pushImage

五、使用 Acp 开发的项目

单机版 Cloud 微服务版 备注
Spring 技术栈后端 acp-admin-standalone acp-admin-cloud 管理系统,后端部分
Solon 技术栈后端 acp-admin-solon-standalone acp-admin-solon-cloud (敬请期待) 管理系统,后端部分
Vue 前端 acp-admin-standalone-web acp-admin-cloud-web 管理系统,前端部分

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

**Application Construction Platform**. Данный проект представляет собой фреймворк, написанный на Kotlin и Java. Я буду внимательно следить за последними тенденциями в отрасли и постоянно обновлять и оптимизировать его с использованием новейших технологий. С помощью этого фреймворка можно быстро создавать обычные приложения на Kotlin или Java, а ... Развернуть Свернуть
Kotlin и 4 других языков
Apache-2.0
Отмена

Обновления (66)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/zhangbinhub-acp.git
git@api.gitlife.ru:oschina-mirror/zhangbinhub-acp.git
oschina-mirror
zhangbinhub-acp
zhangbinhub-acp
master