Javaweb经典的三层框架和MVC设计模式
来源:互联网 发布:蓝海智投 知乎 编辑:程序博客网 时间:2024/04/30 04:43
基本概念
MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
MVC模式对程序的后期维护和扩展提供了方便,并且为程序某些部分的重用提供了方便。同时MVC也使程序简化,更加直观。
* 控制器Controller:对请求进行处理,负责请求转发;
* 视图View:图形化界面;
* 模型Model:处理业务逻辑。
MVC并不是Java专属,几乎现在所有B/S架构都采用了MVC设计模式。
Javaweb中MVC设计模式的实现
JavaWeb经历了JSP Model1、JSP Model1二代、JSP Model2三个时期。
Jsp Model2中使用了三种技术JSP、Servlet和JavaBeans。JSP Model2模式已经可以清晰的看到MVC完整的结构了。
* JSP:视图层,用来与用户打交道。负责显示数据给用户(显示页面);
* Servlet:控制层,负责找到合适的模型对象来处理业务逻辑,转发到合适的视图;
* JavaBean:模型层,完成具体的业务工作,例如:开启、转账等。
Javaweb经典三层框架
Javaweb经典三层框架是JavaWeb独有的!所谓三层分别是表述层(WEB层)、业务逻辑层(Business Logic),以及数据访问层(Data Access)。
* web层:包含JSP和Servlet等与WEB相关的内容;
* service业务层:业务层中不包含JavaWeb API,它只关心业务逻辑;
* dao数据层:封装了对数据库的访问细节;
注意,在业务层中不能出现JavaWeb API,如request、response等。也就是说,业务层代码是可重用的(比如,查看用户信息和修改用户信息时,都需要先展示用户信息,而将这部分的功能代码写在业务层,两者都可调用)。
通过以上框架模型可以实现将一般的java代码修改为经典的三层框架
即 web层,service层,dao层,entity(存放JavaBean)。
接口的意义及在java web三层架构中的作用
在实际开发中,service层因为实现的功能代码较多,方法展示不清晰,功能逻辑不清楚,不易于新开发人员快速开发。因此可以在service层上添加接口,用以清晰的展示业务逻辑等,方便快速开发。
接口在项目就是一个业务逻辑,面向接口编程就是先把客户的业务提取出来,作为接口.业务具体实现通过该接口的实现类来完成.当客户需求变化时,只需编写该业务逻辑的新的实现类,就可以完成需求,不需要改写现有代码,减少对系统的影响.采用基于接口编程的项目,业务逻辑清晰,代码易懂,方便扩展,可维护性强.即使更换一批人员,新来的人依然可以快速上手.对于公司来说,意义更大。
- Javaweb经典的三层框架和MVC设计模式
- 浅谈Javaweb经典三层架构和MVC框架模式
- 浅谈Javaweb经典三层架构和MVC框架模式
- 浅谈Javaweb经典三层架构和MVC框架模式
- 浅谈Javaweb经典三层架构和MVC框架模式
- MVC设计模式和JavaWeb三层模型
- JavaWeb笔记——MVC设计模式和JavaWeb经典三层架
- web day13 JSTL标签库(c标签,自定义标签),MVC设计模式,JavaWeb经典三层框架
- JavaWeb.三层框架.MVC
- JavaWeb经典三层框架
- JavaWeb经典三层框架
- JavaWeb经典三层框架
- 浅谈javaweb三大框架和MVC设计模式
- 浅谈javaweb三大框架和MVC设计模式
- 浅谈javaweb三大框架和MVC设计模式
- javaweb三大框架和MVC设计模式
- 【JavaWeb】Jsp开发模式和JavaWeb经典三层结构
- JavaWeb的MVC设计模式
- 装饰者模式
- 国外不错的网站(类似知乎)
- 计算广告机制设计:GFP、GSP和VCG的特点和介绍
- 数据库范式
- 亲爱的面试官,这个我可没看过!(Android部分)
- Javaweb经典的三层框架和MVC设计模式
- 《Effective Java》读书笔记
- 使用URL Rewrite实现网站伪静态(java web)
- 刚毕业两个月的我
- 奋斗群群赛2总结与心得
- Scrum 之 product Backlog
- 阿里巴巴矢量图icon引用方法和与文字对齐的解决方法
- 大数据之路-环境准备win7设置vmware中centos7虚拟机固定ip
- 《C++ Concurrency In Action》part3 线程间共享数据