根据狂神的springmvc讲课(https://www.bilibili.com/video/BV1aE41167Tu?p=4)和笔记(https://www.cnblogs.com/one-smile/p/14035949.html),重新实现了一部分,可能在某处会比视频中的代码内容要少些。之后会继续学习继续更新,增加个人总结。
代码同步在github上:https://github.com/HHHHoliday/Spring/tree/master
代码中的注释已经比较全了,所以CSDN只放总结笔记
1. springmvc-01-servlet模块:回顾servlet(基础MVC框架)
URL输入:http://localhost:8080/springmvc_01_servlet_war_exploded/hello?method=add
前端显示:
URL输入:http://localhost:8080/springmvc_01_servlet_war_exploded/hello?method=delete
前端显示:
2. springmvc-02-springmvc模块:不带注解的springmvc基础原理实现
URL输入:http://localhost:8080/springmvc_02_hellomvc_war_exploded/test
前端显示:
注意:02模块主要用于理解springmvc原理,实际开发中不会这么写,太麻烦了。
02模块实现流程及对应代码(对应代码为个人总结,如有误 欢迎指正):
- DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收请求并拦截请求。
我们假设请求的url为 : http://localhost:8080/springmvc_02_hellomvc_war_exploded/test<!--web.xml--> <!--1.注册DispatcherServlet,这个是SpringMVC的核心,请区分发器,前端控制器--> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--关联一个springmvc的配置文件:【servlet-name】-servlet.xml--> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc-servlet.xml</param-value> </init-param> <!--启动级别-1 与服务器一起启动--> <load-on-startup>1</load-on-startup> </servlet>
如上url拆分成三部分:
http://localhost:8080服务器域名
springmvc_02_hellomvc_war_exploded部署在服务器上的web站点
test表示控制器
通过分析ÿ