大家跟我雪SSH(2)MVC设计模式

MVC将复杂的系统抽象成三个相对独立的组件即:视图,模型,控制器。

M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层(Independent of presentation)。也就是说模型负责复杂的业务逻辑。代表应用程序的数据和用于控制、访问和修改这些数据的业务逻辑。
V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执行结果。也就是说视图是与用户交互的界面。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视图负责维持数据表现的一致性。视图同时将用户要求告知控制器。
C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图。也就是说控制器定义了应用程序的行为;它负责对来自视图的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。

MVC框架的实现模型

模型1(Page-centric):
JSP+JavaBean,JSP既充当控制,又充当视图,以页面为核心,JSP使用jsp:useBean标签来调用Java类文件来参与运行,这里Java类主要负责业务逻辑相关的代码的实现。
模型2(Servlet-centric):
JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。

模型2的MVC模式已经非常出色了,但是还有一些问题需要解决。


StrutsMVC框架(Web application frameworks)

Struts是模式2的进化版本,也是以控制器为核心。

Struts提供了一些组件使用MVC开发应用程序:
View:Struts提供了action form创建form bean, 用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序。

Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入字段形成Action form,然后调用一个Action控制器。Action控制器中提供了model的逻辑接口。

Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean或EJB的形式提供
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值