Servlet高级

熟悉的MVC

提到servlet高级,必然就会出现MVC这个大家耳熟能详的词,MVC的全名是model view controller。实际上呢,我们的程序都可以抽象为输入->逻辑计算->输出这种最基本的模型,MVC就将程序分为了数据处理,逻辑控制,视图呈现三个层次,使得每个层次的职责更为专一化,每一部分的代码对别的部分的影响降到最低,这就是常说的解耦合。另一方面呢,它又结合接口的应用,可以更为容易的替换不同层次的具体实现。如下图:
![MVC](http://imgtech.gmw.cn/attachement/jpg/site2/20111223/f04da22d7ba7105e1d7507.jpg)

Model1

仅运用了JSP+javaBean,舍弃了“庞大”的servlet,虽然这种形式可以咋一定程度上完成MVC的架构,同时开发也比较高效,但是在后期维护上比较麻烦,因为在一般情况下JSP承担了VC或者JavaBean承担MV,此时C的负责会与其他模块相融合,所以就变得耦合度比较高,后期维护很麻烦。Model1的相应流程图如下:
![model1](http://images2015.cnblogs.com/blog/919013/201611/919013-20161107103359358-2109303087.png)

Moldel2

model2与model1不同之处就是,model2结合了servlet,将C的职责分离到servlet,使得JSP专注于V,JavaBean专注于M,更好的区分了代码的职责。Molde2的流程图如下:
![model2](http://images2015.cnblogs.com/blog/919013/201611/919013-20161107103728217-762155204.png)
posted @ 2016-11-07 10:38  Romatic荔枝  阅读(205)  评论(0)    收藏  举报