SpringMVC理解

SpringMVC是用来处理请求的。
SpringMVC理解

springMVC工作原理:
1.用户向服务器发送请求,请求被 springMVC 前端控制器 DispatchServlet 捕获;
2.DispatcherServle 对请求 URL 进行解析,得到请求资源标识符(URL),然后根据该 URL 调用 HandlerMapping定位到具体的Controller;
HandlerMapping能够完成客户请求到Controller映射。
3.DispatcherServlet将请求提交到Controller
4.Controller调用业务逻辑处理后,返回ModelAndView
5.DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
6.视图负责将结果显示到客户端


springMVC的配置文件spring-mvc需要包扫描<context:component-scan><mvc:annotation-driven>注解驱动,为了将@controller这样的注解注册到·HandlerMapping中
配置ViewResoLver这个<bean>

还要在web.xml中配置DispatcherServle


@RequestMapping 映射URL
@PathVariable 前端URL中传参到后端 用于GET请求

重定向:”redirect:/user/demo”

前端post数据,后端直接用封装对象接收


springMVC返回json:
spring-mvc中配置fastjson与注解@ResponseBody一起用,向浏览器返回json格式的数据
注意配置时候,配置的顺序。

springMVC接收json
postman


请求拦截器
基于反射,和spring结合紧密,可以拿到Ioc容器的bean,不是基于servlet,只会拦截springMVC

implements handlerInterceptor
spring-mvc 中申明<mvc:interceptors>


文件的上传和下载
jar包依赖:commons-fileupload commons-io
spring-mvc中配置bean

enctype="multipart/form-data"
<input type="file" name="file">