spring MVC是一个基于MVC模式的表现层框架,和其他的MVC表现层框架,有如下特点:
- 基于的是Servlet模式
- 控制器不在需要继承其他的类,只需要用@Controller注解
- 应用控制器方法参数封装灵活,如果方法参数和表单数据键相同,由前端控制器完成封装
- 返回页面直接在方法中指定,可以String,void等
- 性能优秀
SpringMVC 围绕DispatcherServlet设计的,DispatcherServlet用来处理所有HTTP请求和响应。MVC模式:Model-View-Controller(模型-视图-控制器)模式,它是一种架构模式,其目标是软件的用户界面和业务逻辑分开,使得代码更高的可拓展性、可复用性、可维护性等。
前端控制器(DispatcherServlet):负责接收客户端的请求,根据请求路径访问应用控制器,负责把页面参数填充给JavaBean,负责转发页面等。
应用控制器(用户自定义含有@Controller注解的类),负责产生业务组件,调用业务组件方法完成业务,根据结果返回转发的页面对象。
Spirng MVC的工作流程
1.客户端向服务器发出请求时,服务器先使用前端控制器(DIspatcherServlet)接收请求
2.前端控制器会根据请求的URL路径,定位到具体的应用控制器(Controller)中具体的方法,并封装好的实体对象传入应用控制器方法
3.在方法中生成业务组件调用组件的业务方法,把处理结果(模型),返回给转发的页面路径。由前端控制器(DIspatcherServlet)完成页面转发。