1、普通URL路径映射
@RequestMapping(value={"/test1", "/user/create"}):多个URL路径可以映射到同一个处理器的功能处理
方法。
2、URI 模板模式映射
@RequestMapping(value="/users/{userId}"):{×××}占位符, 请求的URL可以是“/users/123456”或
“/users/abcd”。
@RequestMapping(value="/users/{userId}/create") : 这样也是可以的, 请求的URL 可以是
“/users/123/create”。
@RequestMapping(value="/users/{userId}/topics/{topicId}"):这样也是可以的,请求的URL 可以是
“/users/123/topics/123”
3、Ant风格的URL路径映射
@RequestMapping(value="/users/**"):可以匹配“/users/abc/abc”,但“/users/123”将会被【URI模板模式映射
中的“/users/{userId}”模式优先映射到】。
@RequestMapping(value="/product?"):可匹配“/product1”或“/producta”,但不匹配“/product”或“/productaa”;
@RequestMapping(value="/product*"):可匹配“/productabc”或“/product”,但不匹配“/productabc/abc”;
@RequestMapping(value="/product/*"):可匹配“/product/abc”,但不匹配“/productabc”;
@RequestMapping(value="/products/**/{productId}"):可匹配“/products/abc/abc/123”或“/products/123”,也就是Ant风格和URI模板变量风格可混用;
4、正则表达式风格的URL路径映射
从Spring3.0 开始支持正则表达式风格的URL路径映射,格式为{变量名:正则表达式}。
@RequestMapping(value="/products/{categoryCode:\\d+}-{pageNumber:\\d+}") : 可以匹配“/products/123-1”,但不能匹配“/products/abc-1”,这样可以设计更加严格的规则。
正则表达式风格的URL路径映射是一种特殊的URI模板模式映射:
URI模板模式映射是{userId},不能指定模板变量的数据类型,如是数字还是字符串;
正则表达式风格的URL路径映射,可以指定模板变量的数据类型,可以将规则写的相当复杂。
5、组合使用是“或”的关系
如 @RequestMapping(value={"/test1", "/user/create"}) 组合使用是或的关系,即“/test1”或“/user/create”请求URL路径都可以映射到@RequestMapping指定的功能处理方法。
相关推荐
- `value`: 定义请求的URL路径,可以是URI模板。如`@RequestMapping("/appointments")`。 - `method`: 指定请求的HTTP方法,如GET、POST、PUT、DELETE等。如`@RequestMapping(method = RequestMethod.GET)`。 2. ...
1. **路径映射**:`@RequestMapping`的value属性可以用来指定一个或多个URL路径,例如`@RequestMapping("/users")`,这样就将所有匹配此路径的请求导向到该方法。 2. **请求方法**:通过`method`属性,可以限制只...
在Spring MVC框架中,`@RequestMapping`注解是核心组件之一,它用于处理HTTP请求映射,使得控制器类(Controller)中的方法能够与特定的URL路径关联起来。本篇文章将深入探讨`@RequestMapping`的使用、功能以及相关...
action=edit`的请求,其中`userId`和`bookId`来自URL路径,`action`来自请求参数。 总结来说,`@RequestMapping`用于定义请求映射,`@RequestParam`用于获取请求参数,而`@PathVariable`用于获取URL模板中的动态...
以上代码展示了如何使用`@PathVariable`获取URL路径中的变量,以及`@RequestBody`从请求体中获取JSON或其他格式的数据。 关于`HiddenHttpMethodFilter`,这是一个Spring MVC提供的过滤器,用于处理浏览器不支持PUT...
这个方法会从"/user/{id}"的URL路径中提取"id",并将其转换为整型的userId。 6. **模型属性绑定**:`@ModelAttribute`可以将请求参数或路径变量绑定到方法参数的模型对象中,便于数据校验和业务处理。 在`...
可以指定HTTP方法(GET、POST、PUT、DELETE等)以及URL路径。例如,`@RequestMapping(value = "/users", method = RequestMethod.GET)` 表示该方法将处理GET请求到"/users"路径。 `@RequestParam` 注解则用于从请求...
这个注解可以应用于类级别和方法级别,以定义请求的URL路径、HTTP方法以及其他的匹配条件。接下来,我们将详细讨论`@RequestMapping`的六个属性及其用法。 一、属性详解 1. `value` 和 `method` - `value`: 这个...
- **多路径映射**:可以指定多个路径映射,如`@RequestMapping(value={"/test1", "/create"})`可以同时匹配`/test1`和`/create`。 3. **HTTP方法限制**: 除了定义路径外,还可以通过`method`属性来指定请求方法...
这个注解可以应用在类级别或方法级别,提供了多种方式来定义URL路径。 1. 类级别的`@RequestMapping`:此注解应用于控制器类的顶部,表示类中的所有方法都与指定的URL模式相关联。例如,`@RequestMapping("/user")`...
1. **value**:这个属性用于指定请求的实际URL路径。它可以包含URI模板,如`/{id}`,以便动态匹配不同的请求。例如: ```java @GetMapping("/{day}") public Map, Appointment> getForDay(@PathVariable Date ...
首先,`@RequestMapping`在类级别上的使用定义了一个初步的请求映射,通常作为URL路径的基础。例如: ```java @RequestMapping("/user") public class UserController { // ... } ``` 在这个例子中,`/user`路径...
它可以应用于类级别或方法级别,类级别的映射可以视为一种前缀,方法级别的映射则是具体的路径。例如,类级别上的`@RequestMapping("/api")`和方法级别的`@RequestMapping("/users")`组合起来,表示`/api/users`这个...
2. **路径变量**: 使用`{}`包围的变量在路径中表示路径变量,例如`@RequestMapping("/user/{id}")`,这里的`{id}`就是路径变量,可以在方法参数中通过`@PathVariable`注解获取其值。 3. **请求参数**: 如果需要从...
在这个例子中,`/simpleUrl`是URL路径,`RequestMethod.GET`表示只处理GET请求。`@RequestParam("param")`用来从URL中获取名为"param"的GET参数。当用户访问`/simpleUrl?param=value`时,`handleGetRequest`方法会被...
`@RequestMapping`不仅处理URL路径,还能指定处理的HTTP方法类型,如GET、POST、PUT、DELETE等。通过使用`@GetMapping`、`@PostMapping`等简化注解,代码可读性更强。例如: ```java @PostMapping("/users") ...
在这个例子中,/users/{id}请求将被路由到getUser方法,其中{id}是一个路径变量,可以通过@PathVariable注解获取。 三、自定义 MVC 的框架实现 创建自定义MVC框架的核心在于理解和模仿Spring MVC的处理流程。这...
它可以指定更具体的URL路径,也可以同时指定请求方法(GET、POST等)。例如: ```java // 示例1:处理单一URL @RequestMapping("orderinfo") public ModelAndView orderInfo1() { // ... } // 示例2:处理多个URL...
基于多个普通的URL路径映射: @RequestMapping(value={"/multi1","/multi2","/test/multi"}) public @ResponseBody String multiUrl() { return "test multi url"; } 基于路径变量的URL映射: @RequestMapping...