1、@RequestMapping注解
1、该注解定义了去分发用户请求的这样的一个映射的规则。
2、该注解可以定义在类上,也可以定义在方法上,但是含义不同。
3、一个@Controller 所注解的类中,可以定义多个处理器方法。当然,不同的处理器方法所匹配的 URI 是 不同的。这些不同的 URI 被指定在注解于方法之上的@RequestMapping 的value 属性中。但若这些请 求具有相同的 URI 部分,则这些相同的 URI,可以被抽取到注解在类之上的RequestMapping 的 value 属性中。此时的这个 URI 表示模块的名称。URI 的请求是相对于 Web 的根目录。在类的级别上的注解 会将一个特定请求或者请求模式映射到一个控制器之上。之后你还可以另外添加方法级别的注解来进一 步指定到处理方法的映射关系。
代码演示:
package com.zj.controller;
import com.zj.service.TeamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
/*** ClassName: TeamController ** @author wanglina * @version 1.0*/
@Controller
@RequestMapping("team")
public class TeamController01 {
@Autowired
private TeamService teamService;
@RequestMapping(value = "add.do")
public ModelAndView addTeam() {
System.out.println("TeamController----addTeam---");
ModelAndView mv = new ModelAndView();
mv.setViewName("team/add");// 映射成为物理资源路径:/jsp/team/add.jsp
return mv;
}
@RequestMapping(value = "update.do")
public ModelAndView updateTeam() {
System.out.println("TeamController----updateTeam---");
ModelAndView mv = new ModelAndView();
mv.setViewName("team/update"); //映射成为物理资源路径:/jsp/team/update.jsp
return mv;
}
@RequestMapping("hello.do")
public ModelAndView hello() {
System.out.println("TeamController----add---");
teamService.add();
ModelAndView mv = new ModelAndView();
mv.addObject("teamName", "湖人");//相当于 request.setAttrubuite("teanName","湖人");
mv.setViewName("index");//未来经过springmvc的视图解析器处理,转换成物理资源路径, 相当于request.getRequestDispatcher("index.jsp").forward();
// 经过InternalResourceViewResolver对象的处理之后加上前后缀就变为了 /jsp/index.jsp
return mv;
}
}
4、指定请求处理方式
@RequestMapping
的
method
属性,用来对被注解方法所处理请求的提交方式进行限制,即只有满足 method 属性指定的提交方式的请求,才会执行该被注解方法。 Method 属性的取值为
RequestMethod
枚举常量。常用的为
RequestMethod.GET
与 RequestMethod.POST,分别表示提交方式的匹配规则为
GET
与
POST
提交
![](https://img-blog.csdnimg.cn/20211005153545789.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAd2ludGVyZmxvd2VyXw==,size_18,color_FFFFFF,t_70,g_se,x_16)