最近我在新的工作中接触到的系统用的还是传统的MVC架构,这是一种最基本的解决繁乱的代码跳转问题的架构。
最开始接触这个架构是在大二的JavaEE这门课中,M指的是模型,V指的是视图,C指的是控制器,但MVC架构绝不是指三层架构,如果我们真的要给它分类的话,它顶多算三层架构里面的一层。MVC架构不是B/S架构里面才能用,它最早出现于C/S架构中,MVC架构只是一种解决代码的架构,谁都可以用它,无论是java还是C#,无论是B/S架构还是C/S架构……当然以后做开发我们不可能自己写这个框架,有专门的框架来实现这个架构,如strusts,springMVC等。
MVC中有两种模型
第一种如下:
View发送请求到Controller,Controller找到Model,Model响应相关页面到View。
如一个登录页面,先发送请求到Controller,这个Controller可以是Servlet做的,也可以是过滤器做的,只要能接收到请求即可,Controller找到相应的Model,也就是java类,当然在这个过程中java类可能会执行连接数据库等一系列操作,然后java类运行完以后返回成功或失败相应对应的页面到View上。
第二种如下:
View发送请求到Controller,Controller找到Model,Model连接到Controller,告诉它运行的结果,Controller再响应相关页面到View。
举个例子, View发送请求到Controller,Controller找到对应的Model,Model再连接Controller,告诉Controller成功与失败,比如登录请求成功跳转到哪一个页面,失败跳转到哪一个页面,Controller会把这些记录下来,然后再根据这个响应相关的页面到View。