代码层级
今天学习的内容是代码层级,说是今天的内容,但其实是昨晚深夜与🐶师父讨论的,一场来自深夜将近1点多的激♂情讲解!下面就讲解和查阅资料进行复盘。
1.各层级名称
1.查阅资料版
(1)开放接口层:可直接封装 Service 方法暴露成 RPC 接口;通过 Web 封装成 http 接口;进行网关安全控制、流量控制等。
(2)终端显示层:各个端的模板渲染并执行显示的层。当前主要是 velocity 渲染,JS 渲染, JSP 渲染,移动端展示等。
(3)Web 层:主要是对访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。
(4)Service 层:相对具体的业务逻辑服务层。
(5)Manager 层:通用业务处理层,它有如下特征:1. 对第三方平台封装的层,预处理返回结果及转化异常信息;2. 对Service层通用能力的下沉,如缓存方案、中间件通用处理;3. 与DAO层交互,对多个DAO的组合复用。
(6)DAO 层:数据访问层,与底层 MySQL、Oracle、Hbase 进行数据交互。
2.师父讲解版
(1)前端
(2)控制层——联系前端和下边业务逻辑层
(3)业务逻辑层(具体功能实现层)
(4)数据处理层——联系数据库和业务逻辑层
(5)数据库
比如说举个例子,数据库中有很多数据,现在SG领导(字面翻译即可)过来了,跟你说:“我要你在数据库中找到所有大于0的数,并在界面中显示”。这个时候首先得再数据处理层中用代码把数据库中拿到业务逻辑层,然后在业务逻辑层中用代码,筛选出大于0的数字,然后在控制层中,用代码把业务逻辑层中的数字拿到前端层,就是在页面中显示出来。我个人理解是这么个流程。
说实话,以我目前的知识储备,还不能很好的理解这个分层具体是干什么用的,有什么作用,不过将来肯定会用到这个东西,所以暂时先存在这也无伤大雅。盲猜实操项目的时候可能会用到。