基于Servlet的MVC设计模式

1、  MVC各部分组件功能的区分

每一种组件和技术都有各自的功能和特点,在编写程序时,我们应该是以他们的功能来设计它们的作用,就好像在餐厅吃饭,服务员把菜谱提供给顾客,顾客根据菜谱点菜,然后把菜单交给服务员,而服务员根据菜单中冷、热菜的不同,交给不同的厨师,厨师做好菜后,把菜交给服务员,由服务员把菜给顾客端过来。

分析:

服务员是这个过程的组织者和控制器(Controller),他负责接待顾客,并且把菜谱显示给顾客,把顾客的点菜内容(类似于用户的请求),交给厨师加工菜肴(类似于进行访问数据库和处理业务的Java类),最后服务员把菜肴端给顾客(类似于响应得JSP)。

在这个过程中,对于顾客先看到的是菜谱,之后是整桌的菜肴。在程序中,用户能够看到的就是HTMLJSP页面,这部分称为视图(View)。当服务员把顾客的点菜内容交给厨师后,厨师根据不同的菜,采用不同的原料和配料来加工菜肴。这类似于在程序中根据用户提交不同的请求数据,访问数据库或是进行业务逻辑处理,这部分称为模型(Model)。

在程序设计中,把采用模型(Model)、视图(View)、视图(Controller)的设计方式称为MVC设计模式。

2、  什么是设计模式

设计模式是一套被反复使用、成功的代码设计经验的总结。模式必须是典型问题(不是个别问题)的解决方案。例如:我国的《宪法》,规定只要具有抢劫行为的就构成抢劫罪,而不是针对某一具体案件来定义抢劫罪,如抢劫1元人民币的构成抢劫1元罪。

设计模式为某一类问题提供了解决方案,同时设计模式优化了代码,是代码更容易让别人理解,提高重用性,保证代码的可靠性。

每个设计模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次使用那些已有的解决方案,无需在重复相同的工作。

3、  MVC设计模式

MVC设计模式由以下三部分组成:

模型(Model):对应的组件是JavaBeanJava类)。

视图(View):对应的组件是JSPHTML文件。

控制器(Controller):对应的组件是Servlet

模型可以分为业务逻辑和数据模型,它们代表应用程序的业务逻辑和状态。

视图提供了可交互的客户界面,向客户显示模型数据。

控制器响应客户的请求,根据客户的请求来操作模型,并且把模型的响应结果由视图展示给客户。

4、  MVC设计模型的优点和好处

1)、各司其职、互不干涉

MVC模式中,3个层各司其职,所以如果哪一层的需求发生了变化,就只需要更改相应层中的代码,而不会影响到其他层。

       2)、有利于在开发中的分工

MVC模式中,由于按层把系统分开,那么就能更好地实现开发中的分工。网页设计人员可以开发JSP页面,对于业务熟悉的开发人员可以开发模型中相关业务处理的方法,而其他开发人员可开发控制器,以进行程序控制。

       3)、有利于组件的重用

分层更有利于组件的重用,如控制层可独立成一个通用的组件,视图层也可做成通用的操作界面。

       MVC最重要的特点是把显示与数据分离,这样就增加了各个模块的可重用性。

5、  MVC编程模式

Servlet接收客户端请求,调用相应的模型处理业务逻辑和数据,再由Servlet根据处理的结果,选择相应的JSPHTML文件响应客户端。

6、  JavaEE三层体系结构中,中间层与MVC设计模式中的控制器、模型两个模块相对应。

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值