1. SpringMVC调用流程
SpringMVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。
组件:
1.前端控制器 :接收请求、响应结果
2.处理器映射器 将用户的请求与执行的业务方法进行映射(绑定)
3.处理器适配器 :在编写Handler的时候要按照HandlerAdapter要求的规则去编写,这样适配器HandlerAdapter才可以正确的去执行Handler
4.视图解析器 :进行视图的解析
流程 :(1)用户发送请求至前端控制器; (2) 前端控制器收到请求后,调用处理器映射器,请求获取Handler; (3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给前端控制器; (4)前端控制器调用处理器适配器; (5)处理器适配器经过适配调用 Handler(后端控制器); (6)Handler执行完成返回ModelAndView; (7)处理器适配器将Handler执行结果ModelAndView返回给前端控制器; (8)前端控制器将ModelAndView传给视图解析器进行解析; (9)视图解析器解析后返回具体View; (10)前端控制器对View进行渲染视图(即将模型数据填充至视图中),响应用户。
2. @RestController
@RestController=@Controller+@ResponseBody
@ResponseBody 返回值为String类型则返回字符串本身
返回的是一个对象则返回json串使用
若返回json等内容到页面,则需要加@ResponseBody注解
程序将不会执行视图解析器InternalResourceViewResolver 直接返回
@Controller 程序返回到指定页面
@RequestMapping:用于处理请求 url 映射的注解。
@RequestBody:注解实现接收http请求的json数据,将js