欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MVC模式(javaweb相关)

程序员文章站 2022-03-06 08:07:38
...

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

Model1设计模式:JSP+JavaBean

MVC模式(javaweb相关)

 

JSP开发的弊端    
业务处理的代码与JSP代码混在一起.不易于阅读,不易于代码维护,降低了程序的可维护性,可扩展性,同时不利于分工合作

例如:

<form method="post" action="doLogin.jsp">
      <table>
         <tr>
    	<td>用户名称:<input type="text" name="user"/></td>
         </tr>
…
<%
    String uname=request.getParameter("user");
    String upwd=request.getParameter("pwd");
…
%>

所以我们需要引进MVC设计模式:

Model2模式:(采用MVC设计模式)

MVC模式(javaweb相关)

mvc设计模式具体实现:

模型(model):

        对应的组件是JavaBean.代表应用程序的数据以及用于访问,控制和修改这些数据的业务规则

视图(view):

        对应的组件是JSP或HTML.视图是用户看到并与之交互的界面.(它从模型中获取数据并指定这些数据应该如何表现)

控制器(controller):

        对应的组件是Servlet.控制器负责转发请求,对请求进行处理.

mvc设计模式优点:
        1.层次关系更加清晰
        2.各组件分工更加明确


mvc设计模式缺点:
        1.增加了编写的复杂度

三层开发遵循的原则:

1.上层依赖其下层,依赖关系不跨层
表示层不能直接访问数据访问层
上层调用下层的结果,取决于下层的实现


2.下一层不能调用上一层


3.下一层不依赖上一层
上层的改变不会影响下一层
下层的改变会影响上一层得到的结果


4.在上一层中不能出现下一层的概念
分工明确,各司其职

5.下层不知道上层的存在
仅完成自身的功能
不关心结果如何使用

6.每一层仅知道其下层的存在,忽略其他层的存在
只关心结果的取得
不关心结果的实现过程
JSTL通常会与EL表达式合作实现JSP页面的编码

总结:分层开发的优势

1.职责划分清晰,互不影响

2.无损替换

3.复用代码

4.降低了系统内部的依赖程度

 

 

 

 

相关标签: mvc