spring mvc 基本原理

在web.xml配置spring mvc入口servlet:

<servlet>

        <servlet-name>mvc-dispatcher</servlet-name>

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        <load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

        <servlet-name>mvc-dispatcher</servlet-name>

        <url-pattern>*.mvc</url-pattern>

</servlet-mapping>

 

入口servlet类org.springframework.web.servlet.DispatcherServlet最终通过类 org.springframework.web.servlet.DispatcherServlet的doDispatch方法中完成请求处理和视图解析,包括以下两个过程:

1、通过HandlerAdapter的handle方法调用start.java中的start方法返回modelandview,比如返回”main_new”字符串。

2、调用processDispatchResult处理modelandview对象,最终通过org.springframework.web.servlet.view.JstlView(这里以jsp视图解析为例,实际情况可能是其他视图解析器)的render方法定位到main_new.jsp页面。

这两步的具体调用过程如下:

通过注解将start类的start方法映射到url /start.mvc

访问/start.mvc后第一步调用过程如下,对请求处理调用start.java中的start方法:

 

 第二步调用过程:通过视图解析器解析  /start 定位到 main_new.jsp页面:

 

posted @   范世强  阅读(291)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示