Java Web开发框架之MVC开发模式
Java Web开发框架之MVC开发模式
1. MVC的定义:
(Model-View-Controller,模型-视图-控制器)是目前广泛流行的一种软件架构模式,MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。
M,Model(模型):(JavaBean)
在web应用中,模型表示业务数据与业务逻辑,它是web应用的主题部分,视图中业务数据由模型提供。
V,view(视图):(JSP)
视图代表用户交互界面。一个web应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图中数据的采集和处理以及用户的请求,而不包括对视图中业务流程的处理。
C,Controller(控制器):(Servlet)
控制器是视图与模型之间的纽带。控制器将视图接收的数据交给响应的模型去处理,将模型的返回数据交给响应的视图去显示。
2. MVC的处理过程:
从用户请求开始,用户发出请求后,视图将请求转发到控制器,控制器调用模型,由模型对业务进行处理,模型完成业务处理后向控制器返回处理结果,控制根据返回数据选择相应的视图反馈给用户。
3. MVC的作用:
MVC本身不属于设计模式的一种,它描述的是一种结构,最终目的达到解耦,解耦的意思是你更改某一层代码,不会影响其他层代码,如果你会像spring这样的框架,你会了解面向接口编程,视图层(jsp)调用控制层(action),控制层调用业务层(service),业务层调用数据访问层(Dao)。
4. MVC的原理图:
5. MVC的优点:
MVC模式将它们分离以提高系统的灵活性和复用性,不使用MVC模式,用户界面设计往往将这些对象混在一起。
MVC模式实现了模型和视图的分离,这带来了几个好处。
(1)一个模型提供不同的多个视图表现形式,也能够为一个模型创建新的视图而无须重写模型。一旦模型的数据发生变化,模 型将通知有关的视图,每个视图相应地刷新自己。
(2)模型可复用。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。
(3)提高开发效率。在开发界面显示部分时,你仅仅需要考虑的是如何布局一个好的用户界面;开发模型时,
你仅仅要考虑的是业务逻辑和数据维护,这样能使开发者专注于某一方面的开发,提高开发效率。
总的来说MVC设计模式可以方便开发人员分工协作,提高开发效率,增强程序的可维护性和拓展性而且
还利用Controller将Model与View分离,降低它们之间的耦合度。