【源码】手写SpringMVC框架源码(一)

SpringMVC框架

标注@Controller,注释controller层
标注@Service,注释service层
标注@RequestMapping("/login"),表示访问链接
标注@RequestParam(“name”),表示链接参数
标注@Autowired,表示自动注入

最终效果:浏览器访问localhost:8080/login,执行controller中标注@RequestMapping("/login")的方法
在这里插入图片描述

HandlerMethod初始化

思考:将标注的访问链接和方法,使用map初始化出来。key存放链接,value存放方法名称。获取到访问链接后,直接去map中查找对应的执行方法。
在这里插入图片描述

HttpServlet方法

HttpServlet有3个主要方法,init、doGet、doPost。init会在项目初始化时运行,doGet和doPost分别在有get和post请求是调用。因此,可以HandlerMethod在init中初始化好,doGet或者doPost时,获取到访问链接,执行对应的方法
在这里插入图片描述

SpringMVC框架图

经过上述分析,SpringMVC最为重要的逻辑就是HandlerMethod的初始化和后续的访问。
在这里插入图片描述

码云地址:[https://gitee.com/xumiaofeng/springmvc]

发布了15 篇原创文章 · 获赞 9 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章