1.SpringMVC的流程?
- 用户发送请求至前端控制器DispatcherServiet;
- 前端控制器收到请求后,调用处理器映射器HandlerMapping,请求获取Handler;
- 处理器映射器根据请求URL找到具体的处理器Handler,生成处理器对象及处理器拦截器(如果有则生成),一并返回给前端控制器;
- 前端控制器调用处理器适配器HandlerAdapter,请求执行Handler;
- 处理器适配器经过适配调用具体处理器进行处理业务逻辑;
- 处理器执行完成返回ModelAndView;
- 处理器适配器将处理器结果ModelAndView返回给前端控制器;
- 前端控制器将ModelAndView传给视图解析器ViewResolver进行解析;
- 视图解析器解析后返回具体视图View;
- 前端控制器对View进行渲染视图(即将模型数据填充至视图中);
- 前端控制器响应用户。
2.SpringMVC怎么设定 重定向 和 转发 的?
- 重定向:在返回值前面加“redirect”,譬如“redirect:http://www.baidu.com”
- 转发:在返回值前面加“forward”,譬如“forward:user.do?name=method4”
3.SpringMVC常用的注解有哪些?
- @RequestMapping:用于处理请求url映射的注解,可用于类或方法上,用于类上,则表示类中的所有响应请求的方法都是以该地址作为父路径。
- @RequestBody:注解实现接收http请求的json数据,将json转换为java对象。
- @ResponseBody:注解实现将controller方法返回对象转化为json对象响应给客户。