使用URL的一部分作为Spring MVC中控制器的参数

Dón*_*yle 2 java spring spring-mvc url-parameters

例如,使用URL

foo.com/bar/99
Run Code Online (Sandbox Code Playgroud)

99将直接作为参数提供给控制器中的方法.控制器映射到/ bar

对于熟悉ASP.NET MVC或Django的人来说,这与前者中的routes.MapRoute类似,后者中的urlpatterns中使用(?P\d +).

可以直接处理Http Request对象中的数据来获取它,但我想知道Spring MVC是否内置了对此的支持(特别是版本2.5).

Dón*_*yle 12

对于使用Spring 3的任何人,我已经了解到这可以使用新的@PathVairable注释来完成

以下是http://blog.springsource.com/2009/03/08/rest-in-spring-3-mvc/上的示例

@RequestMapping("/hotels/{hotelId}")
public String getHotel(@PathVariable String hotelId, Model model) {
    List<Hotel> hotels = hotelService.getHotels();
    model.addAttribute("hotels", hotels);
    return "hotels";
}
Run Code Online (Sandbox Code Playgroud)