You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Postman中发送Spring Boot实体ID列表(仅传ID)

实现Spring Boot API接收仅Product ID列表的请求

1. 调整请求JSON格式

直接把嵌套对象数组改成纯数字数组,Postman里发送的JSON格式如下:

{
    "productIds": [1, 2, 3]
}

2. 后端代码处理

定义请求DTO类

创建一个专门的请求数据传输类(DTO),用来接收前端传递的ID列表:

public class ProductIdRequest {
    // 类型和你的Product实体ID类型保持一致,比如Integer/Long
    private List<Long> productIds;

    // 生成getter和setter方法,或者使用Lombok的@Data注解简化代码
    public List<Long> getProductIds() {
        return productIds;
    }

    public void setProductIds(List<Long> productIds) {
        this.productIds = productIds;
    }
}

编写Controller接口

在你的API接口方法中,用这个DTO类接收请求体:

@RestController
@RequestMapping("/api/products")
public class ProductController {

    @PostMapping("/batch-process") // 替换成你的实际接口路径
    public ResponseEntity<String> batchProcessProductIds(@RequestBody ProductIdRequest request) {
        // 获取ID列表,后续执行业务逻辑(比如批量查询、更新等)
        List<Long> productIds = request.getProductIds();
        
        // 示例业务逻辑:打印ID列表
        productIds.forEach(id -> System.out.println("处理Product ID: " + id));
        
        return ResponseEntity.ok("批量处理完成");
    }
}

3. Postman请求配置

  • 请求方法选择POST(匹配你的接口方法)
  • 请求Body选择raw,格式切换为JSON
  • 粘贴调整后的JSON内容发送即可

可选简化方案(无DTO)

如果你的接口只需要接收ID列表这一个参数,可以直接用List作为请求体,此时Postman里的请求体直接是纯数组:

[1, 2, 3]

对应的Controller接口写法:

@PostMapping("/batch-process")
public ResponseEntity<String> batchProcessProductIds(@RequestBody List<Long> productIds) {
    // 直接使用ID列表处理业务
    return ResponseEntity.ok("批量处理完成");
}

这种方式更简洁,但如果后续需要添加其他请求参数,就不如DTO灵活。

内容的提问来源于stack exchange,提问作者kidulf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 08:42:12