MVC是一种代码的组织方式,是一种具体的代码重用的实现方式,并不是一种设计模式,MVC三层各负其责互不干扰,实现了代码的高度解耦。
model 是数据模型,应该只是一个普通的pojo不应该包含复杂的业务逻辑,在MVC框架中只负责数据传递的作用。一般和orm框架中的实体类重合度较高(负责的model需要另外新建一个vo在controller中拼装)。
view 是视图,负责吧model中的东西安装用户可理解的方式显示出来,并且还负责与用户交互,直接面对的是用户。view的实现方式有很多,比如freemarker、JSP、jstl 等。大部分MVC框架都支持多重视图随意切换而不影响 model 和controller(解耦)。
controller 是具体的业务逻辑控制模块,和业务强相关,负责组织视图所需要的model和要展示的视图,把具体的model和view进行关联,并且处理view和用的交互结果在反馈给用户。
MVC和设计模式的区别
设计模式是一种代码设计经验的总结,MVC更像是一种经验总结过会得出的一种具体的解决方式。而且MVC更多的是框架在java在一般来说就是指springmvc、struts。所以具体的来说设计模式更抽象,MVC更具体。
更多java面试题关注小程序,每天更新