执行 @ComponentScan 加载对应的 bean
加载 UserController,每个 @RequestMapping 的名称对应一个具体的方法
这就建立了 /save 和 save 方法的对应关系
执行 getServletMappings 方法,设定 SpringMVC 拦截请求的路径规则
2.2.2 单次请求过程
发送请求 http://localhost/save
web容器发现该请求满足 SpringMVC 拦截规则,将请求交给 SpringMVC 处理
解析请求路径 /save
由 /save 匹配并执行对应的方法 save()
检测到有 @ResponseBody 直接将 save() 方法的返回值作为响应体返回给请求方
2.3 Bean 加载控制
入门案例的内容已经做完了,在入门案例中我们创建过一个 SpringMvcConfig 的配置类,再回想
前面 咱们学习 Spring 的时候也创建过一个配置类 SpringConfig 。这两个配置类都需要加载资
源,那么它 们分别都需要加载哪些内容?
springmvc 加载表现层(controller)的 bean
spring 加载数据层(dao)和业务层(service)的 bean
因此可以更改 spring 和 springmvc 的扫描范围:
springmvc:@ComponentScan("com.zmc.controller")
spring 扫描范围设置有三种方式:
方式一:设定精准扫描范围:@ComponentScan({"com.zmc.dao","com.zmc.service"})
真正在做开发的时候,因为Dao最 终是交给 MapperScannerConfigurer 对象来进行
扫描处理的,我们只需要将其扫描到service包即 可
方式二:排除掉表现层的扫描:@ComponentScan(value="com.itheima",
excludeFilters=@ComponentScan.Filter( type = FilterType.ANNOTATION, classes =
Controller.class )
方式三:不区分 spring 和 springmvc 的环境,都加载到同一个环境(了解即可)
ServletContainersInitConfig 配置类可以进行简
化!!!!!!!!!!!!!!!!!!!!!!
3、PostMan 工具的使用
代码编写完后,我们要想测试,只需要打开浏览器直接输入地址发送请求即可。发送的是 GET 请
求可 以直接使用浏览器,但是如果要发送的是 POST 请求呢
如果要求发送的是post请求,我们就得准备页面并且在页面上准备 form 表单,测试起来比较麻
烦。所以我 们就需要借助一些第三方工具,如 PostMan
4.
5.
a.
6.
1.
2.
3.
4.
5.