# IPGuard-boot
**Repository Path**: sunlight_lg/ipguard-boot
## Basic Information
- **Project Name**: IPGuard-boot
- **Description**: 此项目基于DDD领域驱动设计,目前采用单体架构完成,后期会使用微服务完成。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-09-25
- **Last Updated**: 2024-10-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# IPGuard-boot
## 介绍
此项目基于DDD领域驱动设计,目前采用单体架构完成,后期会使用微服务完成。
Ellwood-fwsc-boot是一个基于SpringBoot的快速开发框架,集成了常用的开发组件,包括MyBatis、Redis、springSecurity、Swagger等,旨在提高开发效率,减少重复性工作。安全框架使用springSecurity,数据库使用MySQL,缓存使用Redis,日志使用logback,接口文档使用Swagger。
`
项目因为采用了DDD设计模式,为了地耦合度解耦,所以抛弃掉mybatisPlus的IService 和 ServiceImpl这两个接口
`
****
## 软件架构
### 技术栈
### 架构说明
#### 数据流转流程图
```
[前端页面] -> [VO] -> [Controller] -> 转换为 [DTO] -> [Service] -> 转换为 [Entity] -> [Repository/Mapper] -> 数据库操作
↑ ↓
转换为 [DTO] ← 查询结果 [Entity] ← [Repository/Mapper]
↓
转换为 [VO] -> 返回给 [Controller] -> 返回给前端页面
```
#### 分层架构设计思想
1. VO、DTO、Entity设计
```
controller 层只管理和前端交互的 VO。
service 层管理业务传输用的 DTO。
repository 层管理数据库的 Entity。
```
2. Controller层只负责接收前端请求和返回数据
### 架构目录
#### 后端
```
IPGuard-boot -- 项目根目录
├── IPGuard-common -- 通用模块
├── IPGuard-api -- 第三方接口父模块
├── IPGuard-api-OSS -- 阿里云OSS接口模块
├── IPGuard-business -- 业务父模块
├── IPGuard-business-generation -- 代码生成模块
├── IPGuard-business-system -- 系统模块
├── IPGuard-framework -- 项目框架模块
├── IPGuard-infrastruction -- 基础设施模块
├── IPGuard-web -- 前端模块
└── IPGuard-starter -- 启动模块
```
#### 前端
```
IPGuard-web
├── IPGuard-admin-web -- 后台管理前端
├── IPGuard-mobile -- 移动端前端
└── IPGuard-applet -- 小程序前端
```
## 使用说明
1. xxxx
2. xxxx
3. xxxx
## 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request