当@RequestMapping注解写在类的上面,当中的value表示这个类中所有方法的请求地址的一个共同的模块,例如:
@RequestMapping(value = "/user")
@Controller
public class MyController {
/**
* @RequestMapping : 请求映射
* 属性 : method 表示请求的方式。它的值是RequestMethod类的枚举值。
* 例如表示get请求方式 RequestMethod.GET post请求方式 RequestMethod.POST
*/
//指定some.do使用get请求方式
@RequestMapping(value = "some.do",method = RequestMethod.GET)
public ModelAndView doSome(){ //doGet() -- service请求处理
ModelAndView mv = new ModelAndView();
mv.addObject("msg","欢迎使用springmvc做web开发");
mv.addObject("fun","执行的是doSome方法");
mv.setViewName("show");
return mv;
}
//指定other.do为post请求方式
@RequestMapping(value = "/other.do",method = RequestMethod.POST)
public ModelAndView doOther(){ //doGet() -- service请求处理
ModelAndView mv = new ModelAndView();
mv.addObject("msg","欢迎使用springmvc做web开发");
mv.addObject("fun","执行的是doOther方法");
mv.setViewName("show");
return mv;
}
//不指定请求方式 post和get请求方式都能够成功请求。
@RequestMapping(value = "/first.do")
public ModelAndView doFirst(){
ModelAndView mv = new ModelAndView();
mv.addObject("msg","欢迎使用springmvc做web开发");
mv.addObject("fun","执行的是doOther方法");
mv.setViewName("show");
return mv;
}
这三个方法均在被@RequestMapping注解修饰的MyController类中,则doSome方法对应的地址应该是/user/some.do,doOther方法对应的地址应该是/user/other.do,doFirst方法对应的是/user/first/do。
@RequestMapping的method属性,表示请求的方式,例如get和post请求方式。上面的代码中也已经体现了这点。