Skip to content
2026-09-18ARCHITECTURE约 4 分钟阅读

CLIENT / SERVER SYSTEM

脚手架从 SPA 扩展到客户端与服务端协同的企业级应用架构。

  • SSR
  • Spring Boot
  • Java 25

2026-09-18 ​

更新概览 ​

  • create-wl-app(v1.1.0):新增 spring-boot 后端模板,脚手架从纯前端扩展到全栈;生成器支持 Java 包名替换与占位目录重命名。
  • 全新仓库 springboot-template:Java 25 + Spring Boot 4 企业级后端模板,与四套前端模板共享同一套登录鉴权契约。
  • 四套前端模板 README 增加推荐后端模板章节,SPA 与 SSR 的接入路径形成闭环。

全新 Spring Boot 后端模板 (springboot-template) ​

模板能力 ​

  • 模块化单体:按 auth / user / authorization / audit / shared 业务域组织代码,域内保留 api / application / domain / infrastructure 边界,ArchUnit 规则强制依赖方向与禁字段注入。
  • 可撤销会话:登录签发 256-bit opaque token,Redis 只存 SHA-256 摘要;普通会话 8 小时、remember 会话 30 天;同账号最多 5 个会话(Lua 原子驱逐最旧)。登出、禁用用户、角色变更即时撤销全部会话。
  • 安全姿态:登录限流 IP/账号双维度(5 次/分钟、20 次/小时,Lua 原子计数);安全审计记录登录、注销与全部管理操作,IP/UA 只存哈希;Redis 故障时鉴权失败关闭(503),绝不退化为匿名。
  • 用户与权限管理:用户 CRUD、分页(排序字段服务端白名单)、方法级权限(user:read / user:write / user:role:write)、乐观锁并发控制、首管理员 bootstrap 入口(默认关闭、无默认密码)。
  • 可观测性:结构化 JSON 日志(requestId/traceId/spanId)、Prometheus 指标、独立管理端口探针(readiness 聚合 MySQL 与 Redis 健康态)、OTLP tracing 开关。

模板化与生成 ​

  • 与前端模板的 约定保持一致,后端模板使用 / 占位符,Java 包目录为 src/main/java/,仓库本身不可直接编译。
  • 两种生成方式:create-wl-app(管道符追加一行 Java 包名)或仓库自带的 scripts/generate.sh -n 项目名 -p Java包名 -d 目标目录。
  • CI 的质量门禁运行在生成后的项目上:生成 → ./mvnw clean verify → 镜像与 SBOM。

质量门禁 ​

门禁结果
单元/切片测试98 个全部通过
Testcontainers 集成与契约测试44 个全部通过(真实 MySQL 8.4 + Redis 容器)
JaCoCo全局行 94.2% / 分支 82.6%,核心域行 ≥90%、认证应用服务分支 ≥85% 门禁通过
ArchUnit13 条依赖边界规则通过

前端模板联动 ​

  • 四套前端模板 README 新增「推荐后端模板」章节并链接 springboot-template。
  • SPA 登录字段统一为 username / password / remember;SSR 模板的 HttpOnly Cookie 会话(auth_token)直接对接后端 POST /api/v1/login。

cwa-stack —— 开箱即用,极速响应,让开发更简单、更高效