spring mvc是spring框架的一个模块,
spring MVC和spring无需通过中间件进行整合
spring mvc注解开发:
常用的注解学习
参数绑定(简单类型,pojo,集合类型)
自定义参数绑定
spring mvc和struts2的区别
spring MVC的高级 应用
参数绑定
数据回显
上传图片
json数据交互
RESTful支持
拦截器
spring mvc handler处理器平常叫做controller
处理映射器:handlerMapping
spring mvc的架构原理分析
第一步:发起请求到前端控制器(dispatcherServlet)
第二步:前端控制器请求HandlerMapping查找
Handler可以根据xml配置,注解进行查找
第三步:处理器映射器HandlerMapping向前端控制器返回
Handler
第四步:前端控制器调用处理器适配器去执行Handler
第五步:处理器适配器去执行Handler
第六步:Handler执行完成给适配器返回ModelView
第七步:处理器适配器向前端控制器返回ModelView
ModleView是spring mvc框架的一个底层对象,包括
model和view
第八步:前端控制器请求视图解析器去进行视图解析
根据逻辑视图名解析成真正的视图(JSP)
第九步:视图解析器向前端控制器返回view
第十步:前端控制器进行视图渲染
视图渲染将模型数据(在modelView对象中)填充到
request域
第十一步:前端控制器向用户相应结果
组件:
1.前端控制器:dispatcherServlet
作用:接受请求,响应结果,相当于转发器
有了dispatcherServlet减少了其他组件之间的
耦合性
2.处理器映射器HandlerMapping
作用:根据请求的url查找Handler
3.处理器适配器HandlerAdapter
作用:按照特定规则(handlerAdapter要求的
规则)去执行handler
注意:编写handler时按照handlerAdapter的要求去做,
这样适配器才可以去正确执行Handler
4.视图解析器view resolver
作用:进行视图解析,根据逻辑视图名解析成真正的视图
5.视图view
view是一个接口,实现类支持不同的view类型
非注解的处理器映射器和适配器
处理器映射器:
1.BeanNameUrlHandlermapping
2.SimpleUrlHandlerMapping
适配器
1.SimpleControllerhandlerAdapter
要求编写的handler实现controller接口
2.httpControllerhandlerAdapter
多个映射器可以并存,前端控制器判断
注解的映射器和适配器要配对使用
@Controller
@Requestmapping("/path")
:在控制器下面加@Requestmapping为了
对请求的路径进行分类管理,叫做窄化请求映射
spring mvc的参数绑定: