JSP模式
-
用户发送请求到前端控制器DispatcherServlet
-
DispatcherServlet收到请求调用处理器映射器HandlerMapping(将客户端的请求映射到相应的处理器Handler上)
-
HandlerMapping找到具体的处理器,生成处理器对象及处理器拦截器(如果有),再一起返回给DispatcherServlet
-
DispatcherServlet调用处理器适配器HandlerAdapter
-
HandlerAdapater经过适配调用具体的处理器(Handler/Controller)
-
Controller执行完成返回ModelAndView对象
-
HandlerAdapter将Controller执行结果ModelAndView返回给DispatcherServlet
-
DispatcherServlet将ModelAndView传给视图解析器ViewReslover
-
ViewReslover解析出返回具体视图View
-
DispatcherServlet根据View进行视图解析(即将模型填充至视图中)
-
DispatcherServlet响应用户
简述:DispatcherServlet接收用户请求,通过HandlerMapping确定具体处理器,通过HandlerAdapter处理参数和返回值,获取返回值ModelAndView后通过视图解析器解析出View后展示
前后端分离模式
-
用户发送请求到前端控制器DispatcherServlet
-
DispatcherServlet收到请求调用处理器映射器HandlerMapping(将客户端的请求映射到相应的处理器Handler上)
-
HandlerMapping找到具体的处理器,生成处理器对象及处理器拦截器(如果有),再一起返回给DispatcherServlet
-
DispatcherServlet调用处理器适配器HandlerAdapter
-
HandlerAdapater经过适配调用具体的处理器(Handler/Controller)
-
在方法上添加@ResponseBody
-
通过HttpMessageConverter来返回结果
简述:不再需要视图解析器,通过@ResponseBody可以直接把数据转换成JSON格式后直接响应