java - 获取 URI 路径中的变量

标签 java spring-mvc controller

在 Spring MVC 中,我有一个 Controller ,它监听所有到达 /my/app/path/controller/* 的请求。

假设请求到达 /my/app/path/controller/blah/blah/blah/1/2/3

如何获取 /blah/blah/blah/1/2/3 部分,即与处理程序映射定义中的 * 匹配的部分。

换句话说,我正在寻找类似于 pathInfo 为 servlet 但为 Controller 所做的事情。

最佳答案

在 Spring 3 中,您可以使用 @PathVariable 注释来获取部分 URL。

这是来自 http://blog.springsource.com/2009/03/08/rest-in-spring-3-mvc/ 的一个简单示例

@RequestMapping(value="/hotels/{hotel}/bookings/{booking}", method=RequestMethod.GET)
public String getBooking(@PathVariable("hotel") long hotelId, @PathVariable("booking") long bookingId, Model model) {
    Hotel hotel = hotelService.getHotel(hotelId);
    Booking booking = hotel.getBooking(bookingId);
    model.addAttribute("booking", booking);
    return "booking";
}

关于java - 获取 URI 路径中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1536863/

相关文章:

java - 如何限制文本字段只能输入数字和小数?

java - Spring 不显示 home.html

spring - 如何通过 POST 从 Angular 5 向 Spring Controller 发送多个 RequestParams

asp.net-mvc-3 - MVC 模型在 OnExecuted 操作过滤器中为空……还是设置模型的更优雅的方式?

用于多个 FXML 的 Java FX 1 Controller - 使用 Singleton

java - 如何使用 Java 或 CMD 获取 PC 硬件信息

c# - 用 C# 加密 AES 以匹配 Java 加密

java - Netbeans:有没有一种方法可以模仿 Eclipse CTRL+H 在 JRE 和应用程序库中查找用法?

spring - Spring-fu-Kofu:无法连线 `NamedParameterJdbcTemplate`

mysql - spring mvc + mybatis + mysql5.7 节省时间8小时