Spring @RequestMapping 教程显示了如何在 Spring Web 应用中使用@RequestMapping 注释。 注解用于将 Web 请求映射到请求处理类中的处理程序方法上。
Spring 是用于创建企业应用的流行 Java 应用框架。
@RequestMapping
@RequestMapping 用于将 Web 请求映射到请求处理类中的处理程序方法上。 将 Web 请求映射到处理程序方法的过程也称为路由。
@RequestMapping 具有以下专长:
- @GetMapping
- @PostMapping
- @PutMapping
- @DeleteMapping
- @PatchMapping
注释可以在类和方法级别上使用。 如果在两个级别上都使用,则将请求路径合并。
Spring @RequestMapping
示例
在下面的示例中,我们演示@RequestMapping
注解的用法。
这是项目结构。
pom.xml
在pom.xml
中,我们具有项目依赖项。
resources/logback.xml
这是logback.xml
配置
resources/index.html
这是一个主页。
com/zetcode/config/MyWebInitializer.java
MyWebInitializer
初始化 Spring Web 应用。 它包含一个配置类:WebConfig
。
com/zetcode/config/WebConfig.java
WebConfig
配置 Spring Web 应用。
com/zetcode/controller/MyController.java
MyController
具有@RequestMapping
的各种路由定义。
使用value
选项,我们将/
请求路径映射到home()
处理程序方法。 如果未明确指定,则默认请求方法为 GET。 value
是path
选项的别名。
使用method
选项,我们可以将处理程序映射范围缩小到具有/about
路径的 POST 请求。
此方法可以接受 GET 和 POST 请求。
使用consumes
选项,我们可以将映射范围缩小到具有定义的内容类型的请求。
使用params
选项,我们可以缩小到/time
路径和info=time
请求参数的 GET 请求的映射。
com/zetcode/controller/TestController.java
TestController
具有另外两个映射。
我们也可以将@RequestMapping
放在课堂上。 然后将路径与方法路径合并。
该处理程序映射到/test/info
路径。
path
选项等效于value
。 它可以接受 Ant 样式的 URL 映射。
我们运行 Jetty 服务器。
我们使用curl
工具向主页生成 GET 请求。
这是对/about
路径的 POST 请求。
/fresh
页面接受 GET 和 POST 请求。
我们将带有参数的请求发送到/time
页面。
类级别和方法级别的注释被组合到/test/info
路径中。
最后是蚂蚁风格的映射。
在本教程中,我们使用@RequestMapping
注释创建了各种路径。