昨天晚上了解了一下MVC模型的一些概念上的基础知识,也来总结一下。之后能实践操作的话,有什么心得理解再慢慢补充。
首先一个web开发中,分为前端和后端,前端负责页面的实现,后端负责业务逻辑实现(实现业务逻辑的Java代码和数据库)。
MVC
MVC是框架模式,它的目的是实现web系统的职能分工。它强制性地使应用程序的输入、处理、输出分开,使MVC应用程序被分为:Model模型,View视图,Controller控制器,各自处理各自的任务。
其中view存在于前端代码,controller和model为后端。后端中为了保证代码整洁易读采用分层(从上到下):
- controller层
- service层
- dao层
- 数据层
MVC处理过程:
对用户的输入请求,首先被控制器接收,控制器决定用哪个模型进行处理,
模型通过业务逻辑层处理用户请求并返回数据,最后控制器确定用哪个视图模型,
用相应视图格式化模型返回数据,并通过显示页面呈现给用户。
我的理解:
以前做过一个图书管理系统,但是因为框架都是老师给好的,所以并没有理解其中的原理。现在回忆了一下登录时候的情景:
先由用户在登录界面也就是view,输入用户名和密码,然后点击登录;
点击登录后由controller将用户的指令和输入的数据传递给model;
model和数据库中的数据进行判断输入是否正确;
由controller选择对应view,如果正确,则跳转登录成功页面,不正确则是登陆失败页面。
还在知乎上看过一个类比的生活中的例子,评论里有觉得不恰当的,也有赞同的,但是我觉得对我的理解还是有启发的,就记录一下。
大概意思是,总统在舞台上演讲,后台有工作人员和秘书。总统跟秘书提出口渴的需求,然后秘书决定和后台负责提供水的人要水,后台负责人把水递给秘书,再由秘书把水给总统。
以上就是我的初步理解,日后会在实战中继续总结所学所想,有什么不足之处也欢迎指出。