三层架构(一)

三层架构

本人最近在学习web,学到了三层感觉收获很大,所以借此分享一些个人对三层的理解,表达有误的地方还望各位大佬指出。由于三层知识点本来就挺多,故分几次进行分享,这节主要是对三层的基础入门。
1.所谓的三层架构是指表示层、业务逻辑层和数据访问层,其中表示层有分为表示层前台和表示层后台。
2.下面通过一个点餐的例子对三层做一个直观的认识。
在这里插入图片描述
如上图所示,主要有三个角色:服务员、大厨、小厨,它们各自的作用如下:
服务员:充当表示层,它又两个工作,第一是与顾客交互(表示层前台),我们可以将菜单就理解为表示层前台代码,因为菜单就是给顾客看的;当顾客点了一份土豆丝时,这是服务员就该执行它的第二个工作了,即告诉大厨做一份土豆丝(这时服务员就相当于表示层后台,用于转发用户的请求,用户要吃土豆丝,那我就找一个能做土豆丝的人)。
大厨:充当业务逻辑层,用于对数据访问层的组装。什么意思呢?就是大厨不一定要亲自去炒土豆丝,大厨可以吩咐小厨A去洗土豆,小厨A洗好土豆后,大厨再吩咐小厨B切土豆,最后大厨给小厨C说你现在可以超土豆丝了。这里大厨分别吩咐三个小厨就相当于上图左边的业务逻辑层可分的意思,大厨将炒土豆丝这件事情分为了洗土豆、切土豆和炒土豆。那么组装又该怎么理解呢?很简单,因为所有的小厨做的事情最后做成了一道土豆丝,这就是组装的意思。
小厨:充当数据访问层,是直接和土豆打交道的人,(在开发中就是直接对数据库进行操作,属于dao层)
3.三层之间的关系:
上层一层一层的调用下层,下层将处理结果一层一层的返回给上层。还是拿点菜的例子来说。顾客点完土豆丝以后,服务员调用大厨,让大厨做一道土豆丝,大厨又调用三个小厨,三个小厨做完各自的工作后,一道土豆丝就做好了。小厨C告诉大厨他已炒好土豆丝,这是数据访问层返回结果给业务逻辑层;然后大厨拿着土豆丝给服务员,这是业务逻辑层返回结果给表示层。

三层架构与MVC设计模式之间的关系

MVC设计模式和三层架构的初衷都是为了解耦合,解决了JSP+JavaBean开发模式的弊端。那么就会有人问了,三层架构和MVC设计模式有什么区别呢?下面再来张图说说。
在这里插入图片描述
由于view层和表示层后台的作用都是展示给用户看的,用于和用户交互,所以它们之间是一致的。表示层后台和controller层都是为了分发请求至相应的功能模块,所以这两个之间是一致的。业务逻辑层和model层是一致的。不管是MVC设计模式还是三层架构,它们各个层之间都是通过实体类来进行数据的传输的,这个会在本人下一节的三层案例分析中有所体现。
以上就是本人对三层架构的一个认识,若有不对的地方还请各位小伙伴指出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值