1.tomact接收到请求后,会交给DispatcherServlet进行处理
2.DispatchServlet会根据请求的path找到对应的handler
3.Handler就是加了@RequestMapping的方法。然后利用反射来执行该方法
4.在执行方法之前就会解析方法参数,比如解析@RequestParam,@RequestHeader,@PathVariable等注解
5.解析这些注解就是从请求中获取对应的数据,比如请求头,请求parameters,
然后把数据传给对应的参数
6.有了参数之后就开始执行方法。
7.执行方法后就会得到方法的返回值,springmvc会对返回值进行解析。
8.如果方法上加了@ResponseBody,那么就会把返回值直接返回给浏览器
9.在这个过程中可能需要把一个对象转成json字符传才能返回给浏览器
10.如果方法上没有加@ResponseBody,那么就会进行视图解析,
然后把解析之后的html数据返回给浏览器。
(主要是利用HttpMessageConverter把方法的返回值写入到Response中,
像MappingJackson2HttpMessageConverter就可以把对象转成Json字符串然后写入到Response中)