在SpringBoot中,控制层是基于Spring MVC框架实现的,通过注解的方式来接收前端请求的参数。下面是Spring MVC处理请求的流程:
- 客户端发送HTTP请求到DispatcherServlet(前端控制器)。
- DispatcherServlet根据请求的URL映射到对应的HandlerMapping(处理器映射器),找到对应的控制器(Controller)。
- HandlerAdapter(处理器适配器)将请求发送给控制器,控制器根据请求的参数执行业务逻辑并返回ModelAndView对象。
- HandlerAdapter将ModelAndView对象返回给DispatcherServlet。
- DispatcherServlet将ModelAndView对象传递给ViewResolver(视图解析器),ViewResolver将逻辑视图名称解析为实际的视图对象。
- View对象渲染视图并将渲染结果返回给DispatcherServlet。
- DispatcherServlet将渲染结果返回给客户端。
在控制器中,可以使用注解@RequestParam来接收请求的参数。例如,如果请求的URL为/user?name=xxx&age=18,可以使用如下代码来接收参数:
@RequestMapping(value = "/user", method = RequestMethod.GET)
public String getUser(@RequestParam("name") String name, @RequestParam("age") int age, Model model) {
// 执行业务逻辑
// 将结果添加到Model中
return "user"; // 返回逻辑视图名称
}
在上面的代码中,@RequestParam注解用于指定参数名称,并将其值赋给方法的参数。除此之外,还可以使用@PathVariable注解来接收路径参数,使用@RequestBody注解来接收请求体中的参数等。