gpt4 book ai didi

java - 如何使用 Spring api 正确发送 JSON 数组?

转载 作者:行者123 更新时间:2023-12-02 01:28:16 26 4
gpt4 key购买 nike

所以我正在努力构建一个小网站,该网站应该展示昆虫和一些有关它们的信息,并且我已经收到了 fetch 调用并且该网站本身已启动并运行,没有问题。在后端,我有一个带有 Spring Boot 的 API,用于检索我的 InsectObject,它目前仅包含 titledescription 字符串,并且工作正常。

现在,请原谅我试图尽我最大的能力解释这个问题。

我的问题是我从 API 收到如下响应:

[
{
"id": 1,
"title": "mantis",
"description": "leafy boi"
},
{
"id": 2,
"title": "moth",
"description": "fly boi"
}
]

我希望它返回的位置为:

{
bugs: [
{
"id": 1,
"title": "mantis",
"description": "leafy boi"
},
{
"id": 2,
"title": "moth",
"description": "fly boi"
}
]
}

这就是我认为正确的 API 调用应该是什么样子。但话又说回来,这是我第一次涉足这个领域,我只是遵循教程和文档,一路构建我自己的图片。

如果有任何相关性,我的休息 Controller 如下所示:

@RestController
public class BugSiteController {

private final InsectRepository repository;

BugSiteController(InsectRepository repository) {
this.repository = repository;
}

// get all bugs from the repo
@CrossOrigin(origins = "http://localhost:3000")
@GetMapping("/bugs")
List<InsectObject> getAll() {

return repository.findAll();
}
}

我错过了什么?我是否应该更改 getAll() 方法中的某些内容以获得所需的结果?或者无论如何我都应该能够使用第一个结果?我应该返回除 List<> 之外的其他内容吗?我尝试使用 ResponseEntity 但得到了完全相同的结果,只是更加冗长。

提前致谢。

最佳答案

您可以在模型中设置值,也可以在 map 中设置它。

型号

class InsectResponse {

@JsonProperty("bug")
private List<InsectObject> insectObject;
// Getter, Setter & Constructor
}

Controller

@GetMapping("/bugs")
public ReponseEntity getAll() {
return ResponseEntity.ok(new InsectResponse(repository.findAll()));
}

@GetMapping("/bugs")
public ReponseEntity getAll() {
return ResponseEntity.ok(new HashMap<String, List<InsectObject>>() {{
put("bug", repository.findAll());
}});
}

关于java - 如何使用 Spring api 正确发送 JSON 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56523232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com