当前位置:首页 >> 半导体技术突破 >> 【Spring教程25】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC入门案例总结与SpringMVC工作流程分析,原道n3精英版

【Spring教程25】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC入门案例总结与SpringMVC工作流程分析,原道n3精英版

cpugpu芯片开发光刻机 半导体技术突破 1
文件名:【Spring教程25】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC入门案例总结与SpringMVC工作流程分析,原道n3精英版 【Spring教程25】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC入门案例总结与SpringMVC工作流程分析

目录 1.入门案例总结2. 入门案例工作流程分析2.1 启动服务器初始化过程2.2 单次请求过程

欢迎大家回到《Java教程之Spring30天快速入门》,本教程所有示例均基于Maven实现,如果您对Maven还很陌生,请移步本人的博文《如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》,本文的上一篇为《SpringMVC入门案例代码示例》

1.入门案例总结

SpringMVC入门程序开发总结(1+N)

一次性工作 创建工程,设置服务器,加载工程导入坐标创建web容器启动类,加载SpringMVC配置,并设置SpringMVC请求拦截路径SpringMVC核心配置类(设置配置类,扫描controller包,加载Controller控制器bean) 多次工作 定义处理请求的控制器类 *定义处理请求的控制器方法,并配置映射路径(@RequestMapping)与返回json数据(@ResponseBody)多次工作我们可以通过实现一个用户的删除功能来体验一把 controller类中编写删除方法 //2.制作控制器类,等同于Servlet//2.1必须是一个spring管理的bean//2.2定义具体处理请求的方法//2.3设置当前方法的访问路径//2.4设置响应结果为json数据@Controllerpublic class UserController {@RequestMapping("/save")@ResponseBodypublic String save(){System.out.println("user save ...");return "{'module':'springmvc'}";}@RequestMapping("/delete")@ResponseBodypublic String delete(){System.out.println("user delete ...");return "{'module':'springmvc delete '}";}} 重启服务器,访问http://localhost/delete ,可以看得如下效果 最后针对本案例中出现的Tomcat的Servlet容器配置再来总结下:AbstractDispatcherServletInitializer类是SpringMVC提供的快速初始化Web3.0容器的抽象类AbstractDispatcherServletInitializer提供三个接口方法供用户实现 createRootApplicationContext()方法,如果创建Servlet容器时需要加载非SpringMVC对应的bean,使用当前方法进行,使用方式同createServletApplicationContext()createServletApplicationContext()方法,创建Servlet容器时,加载SpringMVC对应的bean并放入WebApplicationContext对象范围中,而WebApplicationContext的作用范围为ServletContext范围,即整个web容器范围ngetServletMappings()方法,设定SpringMVC对应的请求映射路径,设置为/表示拦截所有请求,任意请求都将转入到SpringMVC进行处理createServletApplicationContext用来加载SpringMVC环境createRootApplicationContext用来加载Spring环境 2. 入门案例工作流程分析

为了更好的使用SpringMVC,我们将SpringMVC的使用过程总共分两个阶段来分析,分别是启动服务器初始化过程和单次请求过程

2.1 启动服务器初始化过程 服务器启动,执行ServletContainersInitConfig类,初始化web容器执行createServletApplicationContext方法,创建了WebApplicationContext对象 该方法加载SpringMVC的配置类SpringMvcConfig来初始化SpringMVC的容器 加载SpringMvcConfig配置类 执行@ComponentScan加载对应的bean 扫描指定包下所有类上的注解,如Controller类上的@Controller注解 加载UserController,每个@RequestMapping的名称对应一个具体的方法

* 此时就建立了 /save 和 save方法的对应关系 6. 执行getServletMappings方法,定义所有的请求都通过SpringMVC

/代表所拦截请求的路径规则,只有被拦截后才能交给SpringMVC来处理请求 2.2 单次请求过程 发送请求localhost/saveweb容器发现所有请求都经过SpringMVC,将请求交给SpringMVC处理 因为符合上面第六步设置的请求路径,所以该请求会交给SpringMVC来处理 解析请求路径/save由/save匹配执行对应的方法save() 上面的第五步已经将请求路径和方法建立了对应关系,通过/save就能找到对应的save方法 执行save()检测到有@ResponseBody直接将save()方法的返回值作为响应求体返回给请求方
协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接