springMVC(一)——springMVC流程
MVC模式
MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。
Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
View(视图) - 视图代表模型包含的数据的可视化。
Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。
在早期的Java web开发中,使用的MVC模式是用jsp+servlet+java bean来实现的,原理如下图所示:
但是使用jsp+servlet+java bean开发比较复杂。
springMVC模式
Spring MVC采用了松散耦合的可插拔组件结构,比其他的MVC框架更具有灵活性和扩展性,Spring MVC通过使用一套注解,使一个Java类成为前端控制器(Controller),不需要实现任何接口,同时,Spring MVC支持RES形式的URL请求,除此之外,Spring MVC在在数据绑定、视图解析、本地化处理及静态资源处理上都有许多不俗的表现。
Spring MVC围绕DispatcherServlet(前端控制器)为中心展开,DispatcherServlet(前端控制器)是Spring MVC的中枢,和MVC的思想一样,它负责从视图获取用户请求并且分派给相应的处理器处理,并决定用哪个视图去把数据呈现给给用户。
SpringMVC的请求相应步骤如下:
1、用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获
2、到达web.xml文件中 DispatcherServlet.查看是否符合url的要求
3、DispatcherServlet就会查询springmvc的配置文件。找HandlerMapping.
4、根据bean的名称查找相应的controller.
5、Controller.执行完成后,向DispatcherServlet 返回一个ModelAndView对象
6、根据返回的ModelAndView在找springmvc配置文件中视图解析器。
7、ViewResolver 结合Model和View,来渲染视图
8、将渲染结果返回给客户端