开始struts1.0的准备——MVC

开始struts1.0的准备——MVC

几个概念:

Domain Model 领域模型-->对象模型(核心)

 DDD(领域驱动设计)

Pattern 代码级 架构级 分析(RBAC 基于角色的管理)

Framework 框架——基础性的设施

多层架构概述

C/S:以数据库为中心

B/S:多层架构才是真正的目的,业务运算、数据库等功能

完全分离,杜绝彼此的耦合与影响,从而实现耦合和良好的可维护性。

复习:C/SB/S的优缺点:

C/S 优点:

1.C/S架构的界面和操作可以很丰富。 

2.安全性能可以很容易保证,实现多层认证也不难。

3.由于只有一层交互,因此响应速度较快。

C/S 缺点:

 1.适用面窄,通常用于局域网中。

 2.用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。

 3.维护成本高,发生一次升级,则所有客户端的程序都需要改变。

B/S 优点:

 1)客户端无需安装,有Web浏览器即可。

 2BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。

 3BS架构无需升级多个客户端,升级服务器即可。

 B/S 缺点:

 1)在跨浏览器上,BS架构不尽如人意。

 2 BS架构的表现要达到CS程序的程度需要花费不少精力。

 3)在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。

 4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意去做的。(在Ajax实用化后此问题得到了一定程度的缓解)

SSH分别所处的位置:

呈现层(UI Layer/Presentation Layer struts

业务逻辑层(Business Layer spring

持久化层(Persistent Layer hibernate

具体如下图:

关于MVC

平常写Webtomcat + Jsp + servlet)时的一个很普通的例子:



MVC1 & MVC2的区别:

mvc1:jsp职责:显示,参数获取, 模型层的调用, 转向(小型项目)

mvc2:从jsp抽取出控制器(servlet


mvc实现原理:

通过一个类来统一截获所有请求

分为两种:

面向请求驱动——struts1.xstruts2.x webwork

面向事件驱动—— JSF

面向请求驱动原理:

Struts MVC实现:


你可能感兴趣的:(开始struts1.0的准备——MVC)