1.用户发起HTTP请求,或者使用POSTMAN
http://example.com/weather?city=New%20York
2.web容器(TOMCAT)收到请求后,根据xml的配置文件,将请求转发给DispatcherServlet(核心控制器)
3.核心控制器分发请求,发送给合适的控制器,此处会调用HandlerMapping(处理器映射器),找到可以处理此请求的控制器,如下图,请求url对应的是控制层的weather路径,那么就会找到此路径来处理
4. 调用控制器方法,此处找到/weather路径之后,那么就会调用对应的方法getWeather
5.. 处理请求,此方法会返回一个“weather”的model and view对象,此处会使用视图解析器进行解析,假设此方法返回的是一个json格式的对象,那么需要在类上加上@ResponseBody注解,表明返回的是一个json对象。但是如果需要返回一个视图,那么默认就会返回一个html页面
6.最终根据处理的结果渲染页面