Java 语言是所有编程语言中最受欢迎的语言之一。使用 Java 编程语言有很多好处,无论是出于安全目的还是构建大型分布式项目。使用 Java 的优势之一在于,Java 试图借助类、继承、多态等概念,将语言中的每个概念与现实世界联系起来。
Java 中还有许多其他概念,例如泛型、访问说明符、注解等,这些概念增加了 Java 代码与程序员之间的友好交互。这些特性为类以及 Java 程序的方法添加了额外的属性。在本文中,我们将讨论如何在 Spring Boot 中获取传入请求的请求体。
> @RequestBody:该注解用于获取传入请求中的请求体。
Spring Initializr 是一个基于 Web 的工具,使用它我们可以轻松生成 Spring Boot 项目的结构。它还提供了在元数据模型中表达的项目的各种功能。该模型允许我们配置 JVM 支持的依赖项列表。在这里,我们将使用 Spring 初始化器创建应用程序的结构,然后使用 IDE 创建一个示例 GET 路由。因此,要做到这一点,请按顺序执行以下步骤:
步骤 1: 前往 Spring Initializr
根据要求填写详细信息。对于此应用程序:
****项目:**** Maven
****语言:**** Java
****Spring Boot:**** 2.2.8 (可根据实际情况调整)
****打包:**** JAR
****Java:**** 8
****依赖项:**** Spring Web
步骤 2: 点击 Generate(生成),这将下载启动器项目。
步骤 3: 解压缩 zip 文件。现在打开合适的 IDE,然后转到 File->New->Project from existing sources->Spring-boot-app 并选择 pom.xml。在提示时点击导入更改并等待项目同步完成。
!项目创建
> 注意: 在 Maven 的导入项目窗口中,请确保您选择的 JDK 版本与创建项目时选择的版本相同。
步骤 4: 进入 src -> main -> java -> com.example.demo (或您的包名) 并 * 创建一个名为 Controller 的 Java 类,并添加注解 @RestController。现在创建一个 GET API,如下所示:
示例:
Person.java
Java
CODEBLOCK_6a4383fe
Controller.java
Java
CODEBLOCK_97483e86
此应用程序现在已准备好运行。运行 Main 类并等待 Tomcat 服务器启动。
> 注意: 这里我们没有使用 @RequestBody 注解,因为它用于处理 POST 请求;由于我们没有在请求体中发送任何数据,因此这里不需要 @RequestBody 注解。
如果我们想添加 @RequestBody 注解来处理 GET 请求(注:通常不推荐在 GET 中使用 Request Body),我们应该使用不同的 HTTP 方法,即使用 @PostMapping 代替 @GetMapping。下面是相同的代码实现。
Java
CODEBLOCK_282f018a
我们不必创建 Person 对象,因为当向 **/Get** 端点发出请求时,Spring 会自动将 ob 参数与请求体中的数据关联起来。
> 注意:**Person** 对象的创建将由 Spring 框架根据请求体中的 JSON 数据进行处理。
步骤 5: 现在打开 Postman 并添加 URL 地址,然后发出请求(对于上面的 @PostMapping 示例,应发送 POST 请求)。