因为还不会MarkDown,就这样写了吧,以后有时间和心思再重构好了。
从开始学MVC架构开始,就没有弄清楚过其中每一个单词所代表的含义,这两天看了很多文章,反而有些迷糊了,不过还是把当下的结论记录下来吧。
首先,最最最重要的一点,MVC不是一个设计模式,是的,它不叫“MVC模式”,它是很多设计模式综合运用最终得出来的一个“架构”!,具体的实现如SSM框架,就是基于MVC架构的一个诠释和实现。
然后来解析MVC(Model-View-Control)中每一个成员所代表的含义。
Model:
Model在MVC中扮演着功能掌控者的角色,属于底层,它处理业务逻辑和数据模型,例如User selectUser();这个方法和它调用之后返回的Bean都是属于Model的。至于以何种方式把User传递到前台(例如以Bean的方式传递,使用JSP标签进行处理;或者使用Json格式进行传递,在前台使用JS语言进行处理),可以自由选择。
View:
View在MVC中扮演这展示者的角色,属于上层,它展示从底层提取出来的数据(如以表格,图表等方式),在Jsp中是以Jsp标签进行展示,在其它前台框架中是用Json格式进行数据的处理(在Spring中@controller返回的是JavaBean,@RESTcontroller返回的是Json格式的数据)。
Controller:
Controller在MVC中扮演的是路由控制的角色,属于中间层,它处理用户通过前端发送过来的请求(当然其它MV*模式可能不通过Controller直接向Model发送请求),并调用底层中的对应的方法进行数据的请求,然后将数据发送出去。
大概就是这些了,当然还有理解不透彻的地方,下次回来修改。