JavaWeb之MVC设计模式

 

了解MVC模式之前,我们先来看下面两种设计模式:

 

模式一:

 



 

 

模式二:

 



 

 以上两种模式的缺点:

模式一:页面的显示使用servlet实现时,需要大量的拼接html字符串,不直观,效率低。

模式二:逻辑处理代码卸载jsp页面中,不易调试,且代码耦合度高,不易重用。

 

为了解决以上缺点,我们采用下图的MVC模式:

 



 采用此模式,让jsp仅负责显示,让servlet负责如何处理请求,调用那个业务逻辑处理请求,业务逻辑处理后采用哪个jsp页面显示。jsp和servlet各自发挥自己的长处,显示层于逻辑控制层解耦,程序的复用性增强。

 

MVC的概念

 

MVC是Model-View-Controller的简称,即模型-视图-控制器。

MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。

 

模型(model)

 

模型是应用程序的主体部分,模型表示业务数据和业务逻辑。

一个模型能为多个视图提供数据。

由于应用于模型的代码只需写一次就可以被多个视图重用,所以提高了代码的可重用性。

 

视图

 

视图是用户看到并与之交互的界面,作用如下:

视图向用户显示相关的数据。

接受用户的输入。

不进行任何实际的业务处理。

 

控制器

 

控制器接受用户的输入并调用模型和视图去完成用户的需求。

控制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型处理返回的数据。

 

关于 MVC

M: Model. Dao

V: View. JSP, 在页面上填写 Java 代码实现显示

C: Controller. Serlvet: 

受理请求

获取请求参数

调用 DAO 方法

可能会把 DAO 方法的返回值放入 request 中

转发(或重定向)页面

什么时候转发,什么时候重定向 ? 若目标的响应页面不需要从 request 中读取任何值,则可以使用重定向。(还可以防止表单的重复提交)

不足:

使用数据库连接池,DBUtils,JDBCUtils 工具类,DAO 基类

一个请求一个 Serlvet 不好!一个模块使用一个 Serlvet,即多个请求可以使用一个 Servlet 

在页面上加入 jQuery 提示

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值