有人告訴我我應該在我的控制器中重構這個方法的回傳型別,這樣它就不會回傳一個通用的 <?> :
@GetMapping(value = "/{id}")
public ResponseEntity<?> getById(@PathVariable Long id) {
return myService.getById(id).map(ResponseEntity::ok).orElse(new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR));
}
myService.getById
回傳 a Optional<DestinyDTO>,我對回傳 a 是否正確感到困惑ResponseEntity<Optional<DestinyDTO>>。如果是這樣,我如何替換<?>回傳型別以匹配我的服務方法 getById 中的實際回傳型別。
希望我自己解釋。任何幫助表示贊賞
uj5u.com熱心網友回復:
你可以回傳ResponseEntity<DestinyDTO>。
uj5u.com熱心網友回復:
您的物體的回應應該更明確。
如果您的回應物體是這樣的ResponseEntity<?>,則您宣告您可以回傳任何型別的資料。
但是如果你回傳這樣的東西,ResponseEntity<User>你就是在宣告你的回應有一個明確的資料,這很有幫助,因為你指定你的物體將回應任何使用你的 API 的人,如果你使用 Swagger,它將被明確記錄,而不是一個簡單的 ?。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/369647.html
上一篇:如何執行Mono序列的串列
