Training Full-Stack Project
前后端分离的全栈项目基础工程:
frontend: React 18 + TypeScript + Vitebackend: Spring Boot + Java 21 + Maven + MyBatis-PlusMySQL: 外部 MySQL 8 数据库,由环境变量提供连接配置
环境要求
- Node.js 20+
- JDK 21+
- Maven 3.9+(或使用项目中的 Maven Wrapper)
- 可访问目标 MySQL 的网络和账号
配置数据库
项目不会创建或启动 MySQL。请先确保 .env.example 中配置的 MySQL 服务已经运行并允许当前机器访问。
Spring Boot 启动时按以下顺序读取配置:根目录 .env,然后是根目录 .env.example。同名变量以 .env 为准;没有 .env 时直接使用已配置的 .env.example。
建议将 .env.example 复制为本地 .env,实际 .env 不提交到仓库:
cp .env.example .env
生产环境使用 .env.production.example 作为 .env 模板,或由部署平台注入同名环境变量:
cp .env.production.example .env
需要确认 MYSQL_HOST、MYSQL_PORT、MYSQL_DATABASE、MYSQL_USER 和 MYSQL_PASSWORD 均已配置。生产环境建议使用部署平台的 Secret 管理能力。
启动后端
mvn -f backend/pom.xml spring-boot:run
后端默认运行在 http://localhost:8080,健康检查地址为 GET /api/health。
启动前端
cd frontend
npm install
npm run dev
前端默认运行在 http://localhost:5173,开发服务器会将 /api 请求代理到后端。
构建检查
cd frontend
npm run build
cd ../backend
mvn clean verify
Description
Languages
Java
47.2%
TypeScript
29.9%
CSS
20.5%
HTML
1.3%
JavaScript
1.1%