# favor-link **Repository Path**: SimonBy/favor-link ## Basic Information - **Project Name**: favor-link - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-06 - **Last Updated**: 2025-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # favor-link ## 项目说明 favor-link 是一个包含后端和前端项目的完整应用程序,旨在提供一个基于 COLA 架构的示例实现。 ## 后端项目 (favor-link-api) ### 技术栈 - Java 17 - Spring Boot - Spring Data JPA - MyBatis Plus - Sa-Token(轻量级权限认证框架) - COLA 架构 ### 项目架构 采用 COLA 架构模式,分为以下层次: - **领域层(domain)**:包含核心业务逻辑和领域模型 - **应用层(application)**:处理用例和协调领域层 - **适配层(adapter)**:处理接口请求和响应 - **基础设施层(infrastructure)**:提供数据库访问和其他基础服务 ### 主要功能模块 - **用户管理**:用户注册、登录、信息管理 - **礼品记录**:礼品发送、更新和查询 - **支付记录**:支付创建、状态更新和查询 - **审核记录**:审核操作和记录查询 ### 数据库设计 项目支持 H2 和 PostgreSQL 数据库,默认使用 H2 数据库。数据库包含以下主要表: - `user`:用户信息表 - `gift_record`:礼品记录表 - `payment_record`:支付记录表 - `audit_record`:审核记录表 ## 前端项目 (favor-link-vue) ### 技术栈 - Vue 3 - Vite - Pinia(状态管理) - Vue Router ### 项目结构 - **views**:包含各个页面组件 - **components**:可复用的 UI 组件 - **stores**:状态管理模块 - **router**:路由配置 - **assets**:静态资源文件 ## 项目特点 - 后端采用 COLA 架构,实现清晰的分层设计 - 使用领域驱动设计(DDD)理念 - 支持多种数据库 - 前后端分离设计,便于独立开发和部署 ## 部署运行 ### 后端运行 1. 使用 H2 数据库(默认) - 直接运行 `FavorLinkApplication.java` 即可启动项目 - 访问 H2 控制台:`http://localhost:8080/h2-console` 2. 使用 PostgreSQL 数据库 - 修改 `application-pg.yml` 中的数据库配置 - 执行 `db/schema-postgres.sql` 创建表结构 - 执行 `db/data-postgres.sql` 初始化数据 - 运行 `FavorLinkApplication.java` 启动项目 ### 前端运行 1. 安装依赖 ```bash npm install ``` 2. 开发服务器 ```bash npm run dev ``` 3. 构建生产环境 ```bash npm run build ``` 4. 预览构建结果 ```bash npm run preview ``` 本项目是一个完整的全栈应用程序示例,适合学习 COLA 架构和现代 Web 开发实践。