42 lines
1.5 KiB
Markdown
42 lines
1.5 KiB
Markdown
# 项目定制化手册
|
||
## 定制化步骤
|
||
* 确定项目依赖的组件比如redis,mysql,rabbitmq, 然后搜索`TODO`把不需要的依赖和多余的目录移除.
|
||
* 确定项目依赖组件后, 请在application-${env}中配置对应的资源地址.
|
||
* 运行单元测试, 保证单元测试全部通过.
|
||
|
||
## 模块介绍
|
||
### common
|
||
在该模块添加其他模块共用的lib,例如common-lib以及常用的guava,fastjson等<br>
|
||
主要是考虑到项目可能有多个部署的模块,通过将共用的lib定义在common模块中,可以简化其他模块的配置
|
||
|
||
### server
|
||
可部署的后端服务,包含SpringBoot的入口以及该服务相关的client,config,entity,dao, service,controller等
|
||
|
||
#### config
|
||
定义配置信息和错误code
|
||
|
||
#### client
|
||
定义访问依赖的第三方服务的客户端接口. 访问依赖方服务,必须通过Client接口封装,禁止业务代码调用http相关逻辑.
|
||
|
||
#### entity
|
||
定义领域对象.
|
||
|
||
#### service
|
||
主要定义业务逻辑代码
|
||
|
||
#### controller
|
||
对外暴露的API定义
|
||
|
||
#### test
|
||
单元测试模块. 为了保证交付的质量和服务的演进,核心逻辑需要编写单元测试,
|
||
|
||
##### 目录文件
|
||
- java
|
||
- ClientStubs 第三方依赖客户端的Stub实现.
|
||
- BaseTest 单元测试基类. 建议每个单元测试从它基础
|
||
- resources
|
||
- mysql 存放数据库的schema和测试数据. schema文件可以作为schema变化的版本记录, 同时也是H2数据库初始化脚本.
|
||
|
||
### integration-test
|
||
集成测试,测试已部署服务的APIs
|