一块儿写框架-MVC框架的概述(一)

 BasicMVC子框架概述

 咱们暂且将该MVC框架称为BasicMVC框架。web

 因为咱们正在BasicMVC框架,是基于咱们前面写的BasicIoc内核实现的。因此必须依赖BasicIoc内核。所谓咱们称BasicMVC框架是basicIoc框架的子框架。api

 

 在BasicMVC框架的实现以前,先咱们要先理解MVC的含义。框架

 MVC的定义

MVC全称:model-view-cotroller.就是:模型-视图-控制器。spa

从字面上能够看到是一个Web请求到调用后台逻辑代码的过程。意思就是从页面访问后台逻辑代码时,遵照(模型-视图-控制器-逻辑处理代码)的流程。设计

 

说白了,就是建议,咱们不要在视图中编写后台逻辑代码,视图只写视图的标签,全部逻辑代码交予后台处理,视图与后台的代码的跳转以及数据的封装(表单数据to实体类)都在控制器作完。xml

 

因此说:MVC是一个在Web程序设计中,实现视图代码和后台逻辑代码分离的设计思想。对象

 

MVC设计思路流程图(通用)

 

那么根据MVC的设计思想能够得出,MVC框架的流程是:blog

1. 一个请求访问JavaWeb的程序,必须进入到JavaWeb程序的入口web.xml字符串

2. 咱们在web.xml配置一个核心控制器拦截全部的请求io

3. 而后核心控制器根据请求和执行方法的配置(可使用注解也可使用XML),找到要执行的方法

4. 执行方法执行后返回一个视图的映射(能够经过一个字符串或者自定义类实现)

5. 根据视图映射与视图路径的关系跳转回到视图。

 

 

以下图所示:

 

 

 

 

经这么一分析,发现任何MVC框架,实现的流程都是大同小异的。发现了没,哈哈哈,哈哈哈!

1.3. 框架实现流程图

根据以上流程,我根据本身的逻辑,对框架BasicMVC子框架,作出如下设计。

 

 

 

实现MVC请求跳转的思路

定义一个核心控制器,名为DispacherServlet,核心控制器首先实现:

(1)启动JavaWeb项目时,将程序全部的对象使用Ioc内核的机制加载到容器池里面。

咱们必须在Web启动是建立一个ApplicationContext容器操做对象;

咱们必须须要一个配置类,来得到建立容器的信息

 

(2)在请求调用执行方法,那么咱们须要指定请求路径和方法的关系。

      我定义一个@RequestMaping注解来指定它们的关系

 

(3)方法执行后,返回视图映射,我使用字符串对应视图路径的方式来实现。

 

实现以上三步。一个基础的MVC框架就完成。咱们就要代码来一块儿实现它吧!

相关文章
相关标签/搜索