SpringMVC - ***重要***SpringMVC执行流程 + 写一个简单的SpringMVC
总结【记住】
用实际的例子来记忆:http://localhost:8080/SpringMVC/login
1.***重要*** SpringMVC执行流程
实线:SpringMVC帮忙做的
虚线:需要自己实现
- Controller实现具体的逻辑
- 在ViewResolver里,设置/拼接视图返回的名字
2.SpringMVC原理代码展示(真实代码不这么写)
2.1 DispatchServlet请求分发器 的配置(SpringMVC核心)
2.2 HandlerMapping处理器映射器, HandlerAdapter处理器适配器, ViewResolver视图解析器
2.3 Controller
通过实现Controller接口的缺点:
返回值是ModelAndView
“视图跳转”时,把“test”就传给了上一步的ViewResolver视图解析器,拼接成“/WEB-INF/jsp/test.jsp/”。
DispatchServlet就会把这个jsp返回给用户。
2.4 什么样的请求会使用上一步的Controller呢?
当用户输入http://localhost:8080/SpringMVC/hello,会依据“/hello”来找controller.
因为这里的示例用的是BeanNameUrlHandlerMapping,所以会通过找一个叫“/hello”的bean,来找controller。
3.使用注解开发SpringMVC (推荐)
3.1 配置web.xml + 打包lib
增加web application 支持(也就是配置web.xml),版本必须是4.0以上
打包lib:
3.2 DispatchServlet请求分发器 保持不变
和2.1一样,保持不变
3.3 只保留ViewResolver视图解析器,增加...
3.4 Controller的变化
3.5 创建视图层
Issue
404错误,缺少jar包
springMVC项目里,一旦跑不起来,需要手动创建lib包,把dependency都加入lib包内。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?