MVC
MVC(Model-View-Controller)我对它的理解是前端进行请求后台,根据指定的名称进行匹配到相应的处理方法进行访问,执行处理方法后返回前端进行视图展示。
说的详细些的话,是前端进行访问请求到DispatcherServlet。DispatcherServlet根据请求的名称进行调用HandlerMapping,查找到对应的Handler处理者。再调用HandlerAdapter适配器进行处理。HandlerAdapter会根据前面的Handler去处理对应的业务。处理完会返回一个ModelAndView对象(Model是返回的数据对象,View是个逻辑上的View)。ViewResolver会根据逻辑View找到实际的对应的View。其次DispaterServlet把返回的Model的数据传给这个View。最后通过这个view进行反馈给前端。
MVP
MVP(Model-View-Presenter)是MVC演变而来,Presenter(相当于controller)负责逻辑的处理,Model提供数据,View负责显示。在MVP中View并不直接使用Model,它们之间的通信是通过Presenter来进行的,所有的交互都发生在Presenter内部。
MVC与MVP的区别
在MVC中View会从Model中读取数据,MVP是通过Presenter 来获取数据。
MVVM
MVVM(Model-View-ViewModel)和MVC模式一样,主要分为视图View和模型Model,在概念上是真正将页面与数据逻辑分离的模式。ViewModel负责完成View于Model间的交互,负责业务逻辑,Model将数据有效交给View来进行展示。
--------------------------------------From Clam Person Understanding ------------------------------------------------
--------------------------------------Only Reference For You -------------------------------------------------------------
--------------------------------------Also Hope To Get Your Advice ------------------------------------------------------