gpt4 book ai didi

java - Spring boot只返回一个对象

转载 作者:行者123 更新时间:2023-12-02 08:55:47 25 4
gpt4 key购买 nike

我从数据库获取多条记录,并希望通过 spring-boot API 返回这些值,我可以获得一个值,但是当从数据库返回多条记录时,API 仅返回最后一条记录

我定义了这个模型

@Data
public class TestModel {

/** Field rank. (value is "rank") */
private String rank;
/** Field category. (value is "category") */
private String category;
/** Field content. (value is "content") */
private String content;
private String date;
}

在我的 Controller 中,我像这样填充存储库:

private static void populateTestDetails(List<TestModel> testModels, List<Test> test) {
TestModel testModel = new testModel();
for (int i = 0; i < wellness.size(); i++) {
if (test.get(i) != null) {
Test testValue = test.get(i);

testModel.setRank(testValue.getRank());
testModel.setCategory(testValue.getCategory());
testModel.setContent(testValue.getContent());
testModel.setDate(testValue.getDate());


} else {
testModel.setRank("0");
testModel.setCategory("null");
testModel.setContent("0");
testModel.setDate("null");
}
}
testModels.add(testModel);
}

我猜我的调用在 for 循环中覆盖了自身,我如何将结果附加到数组中?那么结果会是什么样子?

[{"rank":"1","category":"test","content":"2","date":"16/01/2020"}, 
{"rank":"2","category":"another test","content":"3","date":"16/01/2020"}]

我对JAVA很陌生,所以很抱歉我的基础知识缺乏并且术语可能有错误

最佳答案

你们很接近。您必须在 for 循环中创建 TestModel 对象,并在 for 循环中将其添加到集合中(无论添加在开头还是末尾都没有关系)

private static void populateTestDetails(List<TestModel> testModels, List<Test> test) {
for (int i = 0; i < wellness.size(); i++) {
TestModel testModel = new testModel();
testModels.add(testModel);

if (test.get(i) != null) {
Test testValue = test.get(i);

testModel.setRank(testValue.getRank());
testModel.setCategory(testValue.getCategory());
testModel.setContent(testValue.getContent());
testModel.setDate(testValue.getDate());


} else {
testModel.setRank("0");
testModel.setCategory("null");
testModel.setContent("0");
testModel.setDate("null");
}
}
}

关于java - Spring boot只返回一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60491002/

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