平时我们说的三层便是 UI、 BUSINESS、 DAO这三层,这个是针对所有的系统都适用的.
而我们平时所说的mvc也是分了三层,包括model层,view层和control层,这个主要是指的在web程序中
的分层,因为view是显示层,control则是辅助页面显示的控制部分(主要包括servlet控制等内容),model泛
指我们的业务逻辑部分以及底层和数据库打交道的部分.
通过model1和model2对比我们可以看到mvc的具体的使用.model1中直接通过jsp完成页面部分,然后通过业务逻辑和底层操作连接数据库。model2则将界面层分为controler和view两部分,model指我们的业务逻辑及以下部分。
model1 :
model2:
鉴于model2中控制层依赖性比较强,基于mvc的这种分层思想,又产生了struts框架,struts框架主要通过actionservlet读取xml配置文件对控制层的业务进行分发,之后通过actionForm和action来完成具体的表单数据提取和基本的转向操作.这样大大减少了model2中servlet内部的耦合.
struts图
为了降低整个web应用程序的耦合,基于三层的思想,产生的框架还有hibernate和spring.
hibernate主要是解决底层数据持久化的问题,它将我们以前对表的直接操作进行了封装,以后我们只用将表类进行直接对应,操作这些对象就可以了.
hibernate图
而为了对以上这些类和层进行管理,出现了spring框架,他通过依赖注射和控制反转实现了对整个应用程序类之间的解耦合.同时我们可以仅仅通过一些简单的配置和对接口的调用就可以实现应用程序各层之间的相互调用关系.
spring图