MVC:Model(模型)-View(视图)-Controller(控制器) ----是一种软件架构模式,一般把软件系统拆分为这三个层次。

    视图View层:前端交互界面或者后端系统界面,它从模型中获取数据向用户展示,也能把用户请求传递给控制器。当模型的状态发生改变时,视图也会更新。

    模型Model层:负责业务数据、定义访问控制以及修改这些数据的业务规则。实现算法(业务层)以及对数据操作与管理(数据层)都在此。

    控制器Contoller层:对View层传过来的需求传递到Model去实现,并反馈(转发)给View层,不包含任何业务逻辑。

MVC的处理过程:请求----控制器接收(控制器决定用哪个模型来进行处理)----模型层(通过业务逻辑层处理用户的请求--通过数据层操作数据)----用相应的视图格式化模型返回数据,并通过显示页面呈现给用户。

  注意:最终要做到三层之间数据隔离,对于本层的操作均无法在外层去实现。

    

业务逻辑:由业务对象--业务规则--完整数据 ----即处理数据的业务。

    例如注册业务逻辑组成 --业务对象--请求注册

               业务规则--用户名不能为空只能为..,密码必须包含数字字母特殊字符等

               完整数据--用户名和密码

 完整的业务逻辑为:(界面点击注册按钮)--启动业务逻辑--请求注册对象传递符合业务规则的完整数据--(到数据层对数据库进行操作)。

JavaWeb的三层架构:表述层(web层)-业务逻辑层(Bnsinness)-数据访问层(Data Access)

    Web层:主要由JSP和Servlet等主导。

    业务层:service层--只关心业务逻辑,即接收视图层的业务请求后,对请求进行分析,并实现业务功能。

    数据层:Dao层--实现对数据的操作,即对数据库的操作和处理与结果反馈。

  此外还有domain层:通常放与数据库相对应的表的JavaBean

  三层架构的处理过程:请求 -- web层serlet进行调用--Service层--Dao层--Service层--Servlet层进行转发--JSP。

  参考文章--https://blog.csdn.net/nawuyao/article/details/50386409

  如有错误之处,请多多指正。

     

MVC开发模式与web经典三层框架的更多相关文章

  1. MVC设计模式与Java Web经典三层架构

    MVC设计模式 MVC的概念 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...

  2. MVC框架模式和Javaweb经典三层架构

    一.MVC设计模式 1.MVC的概念 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(Vie ...

  3. jsp&mvc开发模式&jstl标签&三层架构

    目录 jsp 概念 原理 jsp 的脚本 jsp的内置对象 指令 注释 mvc:开发模式 jsp演变历史 mvc 优缺点 El表达式 JSTL 标签 练习 三层架构:软件设计架构 案例:用户信息列表展 ...

  4. MVC:开发模式&&三层架构:软件设计架构

    MVC:开发模式 jsp演变历史 早期只有servlet,只能使用response输出标签数据,非常麻烦 后来又jsp,简化了Servlet的开发,如果过度使用jsp,在jsp中即写大量的java代码 ...

  5. MVC开发模式与javaEE三层架构

    1.MVC开发模式 1. M:Model,模型.JavaBean        * 完成具体的业务操作,如:查询数据库,封装对象2. V:View,视图.JSP        * 展示数据3. C:C ...

  6. 学习笔记_Java_day12_设计模式MVC(13).JavaWeb的三层框架(14)

    MVC 1. 什么是MVC MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Contr ...

  7. ext.js的mvc开发模式详解

    ext.js的mvc开发模式详解和环境配置 在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题.Extjs为了解决这种问题,在Extjs 4.x版本中引入了MVC开 ...

  8. Java基础85 MVC开发模式

    1.MVC开发模式 本文用 Servlet+JSP+javaBean 的开发模式来讲解 Model:用javabean实现,用于封装业务数据View:用jsp实现,用于显示数据Controller:用 ...

  9. 13 JSP、MVC开发模式、EL表达式和JSPL标签+软件设计架构---学习笔记

    1.JSP (1)JSP概念:Java Server Pages 即java服务器端页面可以理解为:一个特殊的页面,其中既可以指定定义html标签,又可以定义java代码用于简化书写!!! (2)原理 ...

随机推荐

  1. python 编码问题:'ascii' codec can't encode characters in position 的解决方案

    报错: 'ascii' codec can't encode characters in position 8-50: ordinal not in range(128) Python在安装时,默认的 ...

  2. PKU 百炼OJ 简单密码

    http://bailian.openjudge.cn/practice/2767/ #include<iostream> #include <cmath> #include ...

  3. 模板:数位DP

    第一次听说dp还有模板的... 当然你要是记忆化搜索的话,就可以有一些套路 这是一个伪代码: LL Dfs(LL now,限制,LL top){ if(!now) return 判断条件; if(!t ...

  4. 模板:KD-Tree

    KD-Tree,用来解决多维空间中的问题,其实就是优化暴力(逃 一般cdq能做的它都能做,而且...既然是优化暴力,那就学习一下了 对与几个n维点,我们将它每一维分割,建立一颗二叉树,方便我们搜索剪枝 ...

  5. 【codeforces 500D】New Year Santa Network

    [题目链接]:http://codeforces.com/problemset/problem/500/D [题意] 有n个节点构成一棵树; 让你随机地选取3个不同的点a,b,c; 然后计算dis(a ...

  6. java关键字一览表

  7. substring() 方法用于提取字符串中介于两个指定下标之间的字符。

    substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法 stringObject.substring(start,stop) 参数 描述 start 必需.一个非负的整数,规定 ...

  8. idea使用及其快捷键(Jetbrains很多是通用的)(转)

    Java程序员肯定会使用idea进行开发,因为其非常强大,很好用,而且可以很傻瓜式导入gradle,用来做SSM项目也很简单 学生是可以使用教育邮箱或者上床学生证使用免费的jetbrains全家桶的, ...

  9. 构建支持中文字体的moviepy镜像

    首先是系统的环境问题. linux 安装 moviepy需要很多依赖,安装起来费神费力.配置起来也非常麻烦,最简单的办法是直接使用他人构建好的镜像文件. 再就是字体显示问题. 镜像中的imagmagi ...

  10. 利用TensorFlow识别手写的数字---基于两层卷积网络

    1 为什么使用卷积神经网络 Softmax回归是一个比较简单的模型,预测的准确率在91%左右,而使用卷积神经网络将预测的准确率提高到99%. 2 卷积网络的流程 3 代码展示 # -*- coding ...