关于MVC设计模式及流程解析

目录
  • MVC设计模式
    • 概述
    • SSM框架项目搭建流程
  • MVC模式的各个步骤
    • 流程是

MVC设计模式

概述

是一种开发结构合理、能使前后端分离、流程控制逻辑、业务逻辑调用与展示逻辑分离,实现高内聚,低耦合的设计模式。

M:数据实体模型(Model或Entity):

  • 每一个类的成员变量字段对应数据库字段对应(对应的Entity、JavaBean),提供数据的CRUD操作,实现数据库的持久化。

V:视图(View):

  • 视图层:客户端用户能直接看到的页面,主要负责视图的展示。视图层调用控制层(HTML、JSP等文件)。

C:控制 (Controller):

  • 前端视图层的参数提交和页面的响应,都委托给前端处理器处理,在Spring MVC框架下,在Controller作为控制层,Controller响应URL请求并进行处理,根据映射对应关系,调用service层,service层的接口实现类(xxxserviceImpl)调用Dao层完成数据初始化工作。
  • 负责处理模型处理,处理完成后把模型数据返回给视图。(中间调度员Dispatcher)。

SSM框架项目搭建流程

1.数据库准备:创建数据库,构思需求的数据类型

  • 准备实体类,与数据库一一对应
  • (com.it.entity)

2.构建Dao层

  • (com.it.dao)
  • 构建接口:名称叫XXXDao
  • Dao只做单一的逻辑:对数据库CRUD功能接口定义。
  • 并且写get/set/return方法、构造方法(方便输出)。

3.Dao层接口实现

  • 在使用MyBatis时,MyBatis自动实现,可不必写dao层的实现类,可以直接在Mapper.xml文件里写对应的SQL语句来完成对数据库的持久化操作。

业务层:

4. 定义service

  • (com.it.xxxservice)
  • 在xxxService类里定义服务接口,根据需求定义业务功能接口,在每一个接口上方可写注释来明确该接口的功能。
  • 在Service包下建立Impl文件夹,放Service层定义的接口功能实现类。

小结一下:

面向接口编程:当用户在页面(View层)向服务器发送一个请求时,请求由控制层(Controller)处理,Controller负责拦截和调用业务层相关逻辑(service接口对应的impl实现类),业务层调用Dao层对数据库进行操作,从而实现数据的持久化,最终前端处理器Controller返回处理过后的页面显示给用户。

(图片来自网络)

这是一个刚入行的小白对MVC设计模式的理解,写博客的目的就是能将一些自己的理解记录下来,或许我的博客还能帮助到大家,当然,我也迫切希望经验丰富的前辈们能对我的理解给你们宝贵的建议,谢谢!

MVC模式的各个步骤

M:Model模型,实体类和业务和dao

V:view 视图 JSP

C:Controller 控制器,servlet

作用:视图和逻辑分离

流程是

1. 先写实体类

2. 数据访问控制层

3. 业务逻辑

4. 控制器

5. 视图

如图:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • SpringMvc框架的简介与执行流程详解

    目录 一.SpringMvc框架简介 1.Mvc设计理念 2.SpringMvc简介 二.SpringMvc执行流程 1.流程图解 2.步骤描述 3.核心组件 三.整合Spring框架配置 1.spring-mvc配置 2.Web.xml配置 3.测试接口 4.常用注解说明 四.常见参数映射 1.普通映射 2.指定参数名 3.数组参数 4.Map参数 5.包装参数 6.Rest风格参数 五.源代码地址 一.SpringMvc框架简介 1.Mvc设计理念 M:代表模型Model 模型就是数据,应用

  • MVC+DAO设计模式下的设计流程详解

    DAO设计 : DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. 在该层主要完成对象-关系映射的建立,通过这个映射,再通过访问业务对象即可实现对数据库的访问,使得开发中不必再用SQL语句编写复杂的

  • MVC框架自定义实现过程

    1.思维导图 2.什么是MVC? MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写, 它是一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码. 3.运行原理 用户发送请求 → 中央控制器接受用户请求 → 分析请求连接/获取到用户需要的类+方法 → 调用相对应的Model → 访问数据库服务器 4.演绎过程 4.1.控制层 BookServlet: package com.tyf.web; impo

  • 关于MVC设计模式及流程解析

    目录 MVC设计模式 概述 SSM框架项目搭建流程 MVC模式的各个步骤 流程是 MVC设计模式 概述 是一种开发结构合理.能使前后端分离.流程控制逻辑.业务逻辑调用与展示逻辑分离,实现高内聚,低耦合的设计模式. M:数据实体模型(Model或Entity): 每一个类的成员变量字段对应数据库字段对应(对应的Entity.JavaBean),提供数据的CRUD操作,实现数据库的持久化. V:视图(View): 视图层:客户端用户能直接看到的页面,主要负责视图的展示.视图层调用控制层(HTML.J

  • Android开发中的MVC设计模式浅析

    Android开发中的MVC设计模式的理解 1. Android系统中分层的理解: (1).在Android的软件开发工作中,应用程序的开发人员主要是应用Android Application Framework层封装好的Api进行快速开发. (2).在Android框架的四个层次中,下层为上层服务,上层需要下层的支持,上层需要调用下层的服务. (3).这种分层的方式带来极大的稳定性.灵活性和可扩展性,使得不同层的开发人员可以按照规范专心特定层的开发. (4). Android的官方建议应用程序

  • python manage.py runserver流程解析

    这篇文章主要介绍了python manage.py runserver流程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 版本 python27 django 1.0 搭建可运行的环境 创建python27 虚拟环境 github 下载 django-1.0.tar.gz(1.0 版本的django) 解压 可以看到,有个 demo 在 examples 目录 把 django 目录拷贝到 examples 下面,这样 example 可以

  • Android9.0 SystemUI 网络信号栏定制修改的流程解析

    前情提要 Android 8.1平台SystemUI 导航栏加载流程解析 9.0 改动点简要说明 1.新增 StatusBarMobileView 替代 SignalClusterView,用以控制信号栏显示 同时增加的还有 StatusBarIconView.StatusBarWifiView 2.整体流程和 8.1 类似 效果图 整体流程图 上代码 先来看初始赋值的地方 MobileSignalController.java,在 notifyListeners() 方法中进行我们对应的定制,

  • activiti实现员工请假流程解析

    源码下载: http://xiazai.jb51.net/202007/yuanma/FirstActiviti_jb51.rar 链接: https://pan.baidu.com/s/1tCN7SDAdEUerZxcTr_9cqA 提取码: twmp 在开始之前,先说一下刚开始学习工作流的时候遇到的问题,感觉比较困惑,经过这两天的学习,也算有所收获 1.部署了多个流程变量,如何准确开启特定的流程 2. 在一个流程的执行过程中,怎么确定执行到哪一步,即执行到哪个任务了 3. 在有多种情况的条件

  • 采用React编写小程序的Remax框架的编译流程解析(推荐)

    Remax是蚂蚁开源的一个用React来开发小程序的框架,采用运行时无语法限制的方案.整体研究下来主要分为三大部分:运行时原理.模板渲染原理.编译流程:看了下现有大部分文章主要集中在Reamx的运行时和模板渲染原理上,而对整个React代码编译为小程序的流程介绍目前还没有看到,本文即是来补充这个空白. 关于模板渲染原理看这篇文章:https://www.jb51.net/article/132635.htm 关于remax运行时原理看这篇文章:https://www.jb51.net/artic

  • JAVA设计模式零基础解析之单例模式的八种方式

    目录 单例模式简介: 单例模式优点: 应用场景: 单例设计模式的八种方式: 1.饿汉式(静态常量) 2.饿汉式(静态代码块) 3.懒汉式(线程不安全) 4.懒汉式(线程安全,同步方法) 5.懒汉式(线程安全,同步代码块) 6.双重检查(推荐使用) 7.静态内部类(推荐使用) 8.枚举(推荐使用) 单例模式在JDK应用的源码分析 单例模式注意事项和细节说明 单例模式简介: 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一.这种类型的设计模式属于创建型模式,它提供了

  • Openstack各组件逻辑关系及运行流程解析

    目录 各组件逻辑关系图 Openstack 新建云主机流程图 虚拟机启动过程 各组件逻辑关系图 Keystone:认证服务 Glance:镜像服务 Nova:计算服务 Neutron:网络服务 Cinder:存储服务 Horizon:web 界面 Cellometer:监控计费 Swit:对象存储 Heat:编排服务(通过剧本,批量部署虚拟机) Openstack 新建云主机流程图 keystone 身份认证 填写创建云主机的相关配置–> nova-api --> 将相关信息保存到 MySQL

  • Python Decorator的设计模式演绎过程解析

    目录 关于代理模式.装饰模式 Python中的代理/装饰 还有什么不理想的地方呢? 补充 关于代理模式.装饰模式 设计模式中经常提到的代理模式.装饰模式,这两种叫法实际上是说的同一件事,只是侧重点有所不同而已. 这两者都是通过在原有对象的基础上封装一层对象,通过调用封装后的对象而不是原来的对象来实现代理/装饰的目的. 例如:(以Java为例) public class CountProxy implements Count { private CountImpl countImpl; publi

  • asp.net中MVC的处理流程详解

    asp.net MVC 分为主要的Controller .Action.以及Views 下面来分析Asp.net MVC的处理流程: Controller 负责将获取Model数据并将Model传递个View对象,通知View对象显示. 处理流程: 1.用户发起请求--->UrlRouting获取请求—>MvcRouteHandler.GetHttpHandler()—>MvcHandler.ProcessRequest() 2.UrlRouting获取浏览器发起的请求 将RoutDat

随机推荐