通过 springboot 作为单个 api 的多重响应

问题描述 投票:0回答:1

我有一个带有链接“/search/{id}”的 GET 映射函数。我正在获取信使列表 (List) 以及 OrderRelatedInfo (Object)。是否可以通过单个 GET 请求返回两条信息? 例子:

@GetMapping("/search/{id}")
function ? search(@PathVariable String id){
courier = xyzListReturning;
Order = xyzObjectReturning;
return ?
}

我必须在'的地方写什么? ' 是否可以将快递和订单作为一个响应发送?

java spring-boot spring-data
1个回答
0
投票

只需创建一个包装类,如:

class SearchOutput {
    private Order order;
    private Courier courier;

    public SearchOutput(Order order, Courier courier) {
        this.order = order;
        this.courier = courier;
    }
    
    //getters and setters
}

然后用它作为返回类型:

@GetMapping("/search/{id}")
function ResponseBody<SearchOutput> search(@PathVariable String id){
    courier = xyzListReturning;
    Order = xyzObjectReturning;
        
    return ResponseEntity.ok(new SearchOutput(order, courier));
}
© www.soinside.com 2019 - 2024. All rights reserved.