- 后端分层解读
- 前言
- 一、分层目录详细
- 项目结构目录分层详细介绍
- resource目录
- 项目结构划分总结
前言
阿里手册约定后端分层:
- 开放接口层:可直接封装 Service 方法暴露成 RPC 接口;通过 Web 封装成 http 接口;进行网关安全控制、流量控制等。
- 终端显示层:各个端的模板渲染并执行显示的层。当前主要是 velocity 渲染,JS 渲染, JSP 渲染,移动端展示等。
- Web 层:主要是对访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。
- Service 层:相对具体的业务逻辑服务层。
- Manager 层:通用业务处理层,它有如下特征: 对第三方平台封装的层,预处理返回结果及转化异常信息; 对 Service层通用能力的下沉,如缓存方案、中间件通用处理; 与 DAO 层交互,对多个 DAO 的组合复用。
- DAO 层:数据访问层,与底层 MySQL、Oracle、Hbase 等进行数据交互。 外部接口或第三方平台:包括其它部门 RPC
开放接口,基础平台,其它公司的 HTTP 接口。
一、分层目录详细 项目结构目录分层详细介绍
|_annotation:放置项目自定义注解 |_aspect:放置切面代码 |_config:放置配置类 |_constant:放置常量、枚举等定义 |__constnt:存放常量定义 |__enums:存放枚举定义 |_controller:放置控制器代码 |_filter:放置一些过滤、拦截相关的代码 |_mapper:放置数据访问层代码接口 |_model:放置数据模型代码 |__entity:放置数据库实体对象定义 |__dto:存放数据传输对象定义 |__vo:存放显示层对象定义 |_service:放置具体的业务逻辑代码(接口和实现分离) |__intf:存放业务逻辑接口定义 |__impl:存放业务逻辑实际实现 |_utils:放置工具类和辅助代码resource目录
|_mapper:存放mybatis的XML映射文件(如果是mybatis项目) |_static:存放网页静态资源,比如下面的js/css/img |__js: |__css: |__img: |__font: |__等等 |_template:存放网页模板,比如thymeleaf/freemarker模板等 |__header |__sidebar |__bottom |__XXX.html等等 |_application.yml 基本配置文件 |_application-dev.yml 开发环境配置文件 |_application-test.yml 测试环境配置文件 |_application-prod.yml 生产环境配置文件项目结构划分总结
对应项目流程:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)