拆分HomeController中的@RequestMapping
1 package spittr.web; 2 3 import org.springframework.stereotype.Controller; 4 import org.springframework.web.bind.annotation.RequestMapping; 5 import org.springframework.web.bind.annotation.RequestMethod; 6 7 @Controller // 声明为一个控制器 8 @RequestMapping("/") //将控制器映射到“/” 9 public class HomeController { 10 public HomeController() { 11 } 12 13 @RequestMapping(method = RequestMethod.GET) //处理GET请求 14 public String home() { 15 return "home"; //视图名为home 16 } 17 }
在这个新版本的HomeController中,路径现在被转移到类级别的 @RequestMapping上,而HTTP方法依然映射在方法级别上。
当控 制器在类级别上添加@RequestMapping注解时,这个注解会应用到 控制器的所有处理器方法上。
处理器方法上的@RequestMapping注 解会对类级别上的@RequestMapping的声明进行补充。
就HomeController而言,这里只有一个控制器方法。与类级别的 @Request-Mapping合并之后,这个方法的@RequestMapping表 明home()将会处理对“/”路径的GET请求。
在修改@RequestMapping时,还可以对HomeController 做另外一个变更。@RequestMapping的value属性能够接受一 个String类型的数组。
1 @RequestMapping({"/","/homepage"}) //将控制器映射到“/”和“/homepage”