You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
5.9 KiB
Markdown

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### 项目目录结构
```
├── auth --授权认证子项目
│   ├── authentication-server --认证组件服务端
│   ├── authentication-client --认证组件客户端
│   ├── authorization-server --授权组件服务端
│   ├── db --子项目公共数据库脚本
│   └── pom.xml --子项目maven配置文件
├── center --中心子项目
│   ├── bus --消息中心
│   └── pom.xml
├── common --通用子项目
│   ├── core --核心类库
│   ├── test --测试工具类库
│   ├── web --WEB核心类库
│   └── pom.xml
├── gateway --网关子项目
│   ├── gateway-web --基于springcloud gateway的网关
│   ├── gateway-admin --springcloud gateway的网关管理模块
│   └── pom.xml
├── sysadmin --系统管理子项目
│   ├── db --系统管理子项目数据库脚本
│   ├── organization --组织管理应用,包括用户、角色、资源、菜单、组织架构的管理
│   └── pom.xml
├── monitor --监控、日志及服务管理子项目
│   ├── admin --springboot admin管理
│   ├── hystrix-dashboard --hystrix监控
│   ├── turbine --turbine监控聚集
│   └── pom.xml
├── webapps --web项目的基础父工程定义常用依赖等
│   ├── webapp-parent --web项目的父工程新建业务应用父工程
│   └── pom.xml
├── docs --文档及资源文件
├── data --server及服务数据存储目录
│   ├── elasticsearch --elasticsearch配置数据存储位置
│   ├── mysql --mysql数据库文件存储目录
│   ├── rabbitmq --rabbitmq数据文件存储目录
│   └── redis --redis数据文件存储目录
├── demos --demos子项目常用的解决方案案例
│   ├── consumer-feign --消费者服务 feign demo
  ├── consumer-ribbon --消费者服务 ribbon demo
  ├── producer --服务提供者,产品服务
  ├── producer-jpa --服务提供者产品服务jpa和hateoas
│   └── pom.xml
├── docker-compose --基础服务docker快速启动方案
│ ├── .env --docker-compose环境变量配置文件
│ ├── apollo --apollo配置中心配置文件等
│ ├── devops --devops组件的相关配置文件目录
│ ├── nacos --macos组件配置文件目录
│ ├── docker-compose.yml --docker compose配置文件基础组件如数据库、redis、mq等组件
│ ├── docker-compose.devops.yml --docker compose配置文件es、apm等devops组件
│ ├── docker-compose.gateway.yml --docker compose配置文件网关相关组件
│ ├── docker-compose.nacos.yml --docker compose配置文件springcloud alibaba相关组件
│ └── docker-compose.config.yml --docker compose配置文件apollo配置中心
├── readme.md --readme文档入口
└── pom.xml --业务服务子项目
```
### module目录结构
```
├── logs --日志目录
│   ├── spring.log
│   └── spring.log.2018-04-15.0.gz
├── pom.xml --module maven配置文件
├── src --源码目录
│   ├── main --源文件
│   │   ├── db --服务db脚本目录
│   │   │   └── db.sql --ddl & dml
│   │   ├── docker --docker相关配置文件
│   │   │   └── Dockerfile --dockerfile
│   │   ├── docs --接口文档目录一般由swagger生成
│   │   ├── java --java源码目录
│   │   │ ├── dao --数据操作层
│   │   │ ├── service --业务逻辑层
│   │   │ ├── provider --调用第三方服务的提供类
│   │   │ ├── rest --接口controller
│   │   │ ├── entity --实体类
│   │   │ │ ├── form --rest表单校验
│   │   │ │ ├── param --dao参数可以由form转化来
│   │   │ │ ├── po --实体类
│   │   │ │ └── vo --视图对象
│   │   │ ├── events --事件或消息处理类
│   │   │ ├── config --配置类
│   │   │ ├── exception --异常处理相关类
│   │   │ ├── interceptor --拦截器相关类
│   │   │ └── task --定时任务
│   │   └── resources --配置文件目录
│   │   ├── application.yml --springboot的应用配置文件
│   │   └── bootstrap.yml --springboot的配置文件
│   └── test --测试目录
│   ├── java --java测试案例目录
│      └── resources --配置文件目录
│      └── application.yml --springboot test的配置文件
└── target --编译目标目录
```
### 开发规范
[规范文档](pattern.md)