SpringMVC是怎样处理请求的?
SpringMVC是一款基于Java开发的轻量级Web MVC框架,是当下主流的MVC框架之一,它较Struts更简单、更安全。既然如此,那在Java Web开发岗位面试中定会经常被问及SpringMVC的请求处理流程,不少开发者对此依旧是模糊的。
SpringMVC请求处理流程
还是以图片流程来讲解,其流程主要有:
1、用户发起Web请求后到达Web容器(如:Tomcat/Jetty),服务器再将请求对象(HttpServletRequest)交给前置控制器(DispatcherServlet)。这里的前置控制器就是SpringMVC的核心入口,拦截匹配的请求。
2、前置控制器收到请求后会在doService()方法中设置一些属性,然后再将请求交给请求处理适配器(HandlerAdapter)。
3、请求处理适配器再去找到对应的请求处理器(Handler)去进一步处理请求(其实就是执行此请求要做的业务方法)。
4、请求处理器处理好请求后,返回一个ModelAndView对象并生成对应的页面再次交给前置控制器,由前置控制器将响应数据返回客户端。
以上就是SpringMVC请求处理的核心流程,看起来很简单,但内部做的事情远不止这些。以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!