Javaweb经典的三层框架和MVC设计模式

来源:互联网 发布:蓝海智投 知乎 编辑:程序博客网 时间:2024/04/30 04:43

基本概念

MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
MVC模式对程序的后期维护和扩展提供了方便,并且为程序某些部分的重用提供了方便。同时MVC也使程序简化,更加直观。
* 控制器Controller:对请求进行处理,负责请求转发;
* 视图View:图形化界面;
* 模型Model:处理业务逻辑。
MVC设计模式
MVC并不是Java专属,几乎现在所有B/S架构都采用了MVC设计模式。

Javaweb中MVC设计模式的实现

JavaWeb经历了JSP Model1、JSP Model1二代、JSP Model2三个时期。
Jsp Model2中使用了三种技术JSP、Servlet和JavaBeans。JSP Model2模式已经可以清晰的看到MVC完整的结构了。
Javaweb的JSPModel2
* JSP:视图层,用来与用户打交道。负责显示数据给用户(显示页面);
* Servlet:控制层,负责找到合适的模型对象来处理业务逻辑,转发到合适的视图;
* JavaBean:模型层,完成具体的业务工作,例如:开启、转账等。

Javaweb经典三层框架

Javaweb经典三层框架是JavaWeb独有的!所谓三层分别是表述层(WEB层)、业务逻辑层(Business Logic),以及数据访问层(Data Access)。
* web层:包含JSP和Servlet等与WEB相关的内容;
* service业务层:业务层中不包含JavaWeb API,它只关心业务逻辑;
* dao数据层:封装了对数据库的访问细节;
  注意,在业务层中不能出现JavaWeb API,如request、response等。也就是说,业务层代码是可重用的(比如,查看用户信息和修改用户信息时,都需要先展示用户信息,而将这部分的功能代码写在业务层,两者都可调用)。
  Javaweb经典三层框架
通过以上框架模型可以实现将一般的java代码修改为经典的三层框架
即 web层,service层,dao层,entity(存放JavaBean)。

接口的意义及在java web三层架构中的作用

在实际开发中,service层因为实现的功能代码较多,方法展示不清晰,功能逻辑不清楚,不易于新开发人员快速开发。因此可以在service层上添加接口,用以清晰的展示业务逻辑等,方便快速开发。
接口在项目就是一个业务逻辑,面向接口编程就是先把客户的业务提取出来,作为接口.业务具体实现通过该接口的实现类来完成.当客户需求变化时,只需编写该业务逻辑的新的实现类,就可以完成需求,不需要改写现有代码,减少对系统的影响.采用基于接口编程的项目,业务逻辑清晰,代码易懂,方便扩展,可维护性强.即使更换一批人员,新来的人依然可以快速上手.对于公司来说,意义更大。