跳至主要内容

框架概述

AppFuse Server 是一個 Spring Boot 快速開發工具集,提供企業應用程式常用的功能模組。

:::info 版本與升級 安裝前請先從當前發布線取得精確版號,並閱讀 Server Changelog框架升級指南;pre-release 的變更累積在 Changelog 的 [Unreleased] 區段。 :::

設計理念

目的:提供可組合的框架能力,而不是替應用決定領域模型與業務政策

原則:框架可以提供基底型別、adapter 與組裝原語;應用自己的 entity、repository、 controller、授權與 availability policy 仍由消費端定義

技術規格

  • 框架: Spring Boot
  • 語言: Java
  • 建構: Gradle (Maven 發佈)
  • 打包: JAR Library

實際相容的 Spring Boot 範圍與 Java language level 以 當前發布線為準。

安裝

Gradle (Kotlin DSL)

repositories {
maven { url = uri("https://devops.leandev.io/repository/maven-releases/") }
}

dependencies {
implementation("io.leandev.appfuse.webapp:appfuse-server:REPLACE_WITH_EXACT_VERSION")
}

Gradle (Groovy)

repositories {
maven { url = uri('https://devops.leandev.io/repository/maven-releases/') }
}

dependencies {
implementation 'io.leandev.appfuse.webapp:appfuse-server:REPLACE_WITH_EXACT_VERSION'
}

依賴傳遞

AppFuse Server 使用 api 方式聲明核心依賴,這些依賴會自動傳遞給使用者:

  • Spring Boot(actuator、data-jpa、hateoas、mail、quartz、security、OAuth2 resource server、validation、webmvc)
  • Ehcache、Apache HttpClient 5、ShedLock 與 JWT API

使用者專案無需重複聲明這些依賴。

功能模組總覽

分類模組用途文檔
核心工具HTTPHTTP 客戶端工具指南
Cache快取管理(標準/雙層)指南
CSVCSV 讀寫處理指南
ContentMIME 類型檢測指南
DocumentHTML/純文字文件渲染指南
Workbook試算表讀寫指南
數據存儲JPAJPA 查詢建構工具指南
Search搜尋過濾查詢指南
File文件存儲(S3、Azure、SFTP、Local)指南
Image圖像處理(縮放、轉換)指南
Persistence Encryption可取回機密的 at-rest protection 與 key rotation指南
安全認證Security登入鎖定防護指南
OAuth2OAuth2 認證整合指南
Tenant多租戶數據隔離指南
Acting代理/模擬操作脈絡指南
Signed Link一次性或限時簽章連結指南
應用服務Mail郵件發送指南
NLS國際化翻譯指南
LinkHATEOAS 連結建構指南
Error統一錯誤處理指南
Scheduling排程與叢集鎖指南
Notification多通道通知與 outbox指南
Almanac地址、日曆等基礎資料服務指南

下一步

參考實作

查看 app-tenant-server 了解如何在實際專案中使用這些工具建構完整的 RESTful 應用程式。