文章目录
- 定义
- 工作流程
- springWeb的配置
- 1.导入相关依赖
- 2.在web.xml中配置DispatcherServlet
- 3.开启springMVC注解
- 4.处理器类搭建
定义
SpringWeb,也叫spring MVC,是spring框架中的一个模块,基于servlet API构建的原始web框架,ssm为spring+springWeb+mybatis
工作流程
- 用户发送出请求到前端控制器 DispatcherServlet。
- DispatcherServlet 收到请求调用 HandlerMapping(处理器映射器)。
- HandlerMapping 找到具体的处理器(可查找 xml 配置或注解配置),生成处理器对象及处理器拦截器(如果有),再一起返回给 DispatcherServlet。
- DispatcherServlet 调用 HandlerAdapter(处理器适配器)。
- HandlerAdapter 经过适配调用具体的处理器(Handler/Controller)。
- Controller 执行完成向前端响应结果。
springWeb的配置
1.导入相关依赖
<!--spring-webmvc-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
2.在web.xml中配置DispatcherServlet
<!--配置DispatcherServlet,请求分发servlet-->
<servlet>
<servlet-name>application</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</init-param>
<!--控制servlet初始化时间,-1是第一次访问时创建,>=0是服务器启动是创建-->
<load-on-startup>0</load-on-startup>
</servlet>
<!-- 请求映射 -->
<servlet-mapping>
<servlet-name>application</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
3.开启springMVC注解
<!--开启 springmvc 注解-->
<mvc:annotation-driven></mvc:annotation-driven>
4.处理器类搭建
处理器类使用@RestController标记
@RequestMapping 注解是一个用来处理请求地址映射的注解,可用于类或方
法上
package com.xxy.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(path = "/loginCtl")
public class AdminController {
@RequestMapping(path = "/login")
public String login(){
System.out.println("q11");
return "hello world";
}
}package com.xxy.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(path = "/loginCtl")
public class AdminController {
@RequestMapping(path = "/login")
public String login(){
System.out.println("q11");
return "hello world";
}
}