码迷,mamicode.com
首页 > 其他好文 > 详细

开启 J2EE(七)— Model1、Model2和三层架构的演变

时间:2014-07-12 21:24:19      阅读:294      评论:0      收藏:0      [点我收藏+]

标签:j2ee   model1   model2   三层   

  Model1Model2Javaweb开发的两种常见的模型,Model1jsp+javabean的模式,Model2jsp+servlet+javabean的模式。JavaBean就是将逻辑处理、数据库访问等等,在java中对对象进行的打包(对应下文图中的业务逻辑)。

  下面就详细的认识认识:

 

一、Model1

  

  Model1模型中,是JSP为中心,这种模型中JSP既要做页面显示,又要结合业务逻辑处理服务端过程,简单说就是Model1开发没有ServletJSP中既有HTML代码又有逻辑代码。JSP页面的交互通过页面里的链接完成。


  Model1结构图如下:

 bubuko.com,布布扣

注:业务逻辑层不同有之前三层中的业务逻辑层,这里的业务逻辑层既有业务处理又有数据访问。

 

优点:架构相对简单,适合小项目,业务简单的项目。

缺点JSP的职责不单一,职责过重,根据设计模式的思想就是耦合性太高,不便于系统的维护。

其实我们通常把Model1作为一个基础来学习J2EE的开发流程。

 

二、Model2

  

  因为Model1的缺点太过明显,在Model1的基础上,Model2JSP的任务进行分离,将获取参数,调用逻辑这些和页面显示无关的转到Servlet处理,JSP只做显示即可。


  Model2结构图如下:

 bubuko.com,布布扣


  图中已经标出,Model2其实MVC的应用

  在.NET中学习三层时就和MVC对比过,对MVC的理解也只是通过三层去理解的MVC的语义,不过现在看来,通过对Model2的使用,其实没有什么可比性的,但是其思想还是相同的,都通过分层去解耦,使系统变得更加灵活,更好的适应需求的变化,能够更好的进行人员分工。

 

三、三层架构


  在实际的开发过程中通常还会把其中的业务逻辑再进行分离,分出持久层(数据访问),目的还是为了划分职责,形成我们常用的三层架构:

  表示层:JSP/Servlet

  业务逻辑层:业务逻辑处理

  持久层:主要包装持久化逻辑


三层结构图如下:

 bubuko.com,布布扣

 

四、总结

  

  Model12和三层共同之处都在分层思想的体具体现,最终目的是在结构式去实现一个高内聚低耦合,然而到我们具体的项目开中,分层的思想,架构的依托,不仅于此,更重要的还是抽象,层与层之间最好依赖于抽象,每一层都建立一个抽象,如何去抽象,更好的抽象,这是我们每个人都要思考的。


开启 J2EE(七)— Model1、Model2和三层架构的演变,布布扣,bubuko.com

开启 J2EE(七)— Model1、Model2和三层架构的演变

标签:j2ee   model1   model2   三层   

原文地址:http://blog.csdn.net/akkzhjj/article/details/37667261

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!