我正在尝试从数据库中检索三个不同列的记录。我需要一种方法来存储来自这些列的数据,以便我能够遍历第一列并对来自其他两列的数据进行一些检查。我尝试的第一件事就是有三个不同的列表,每个列表同时包含这三列中的记录,但是这样我就无法从单个方法返回所有三个列表,我需要从数据库中检索所有这些数据然后我在另一堂课中使用它。有没有一种方法可以在列表中包含多个列表。还有其他解决方案可以解决这个问题吗? 感谢。
答案 0 :(得分:4)
创建一个bean(Say DbResult),其中包含三个字段column1,column2和column3。
然后创建并返回DbResult列表:List<DbResult> resultList = new ArrayList<DbResult>();
这样您就可以将所有数据传递给调用者方法;
查看DTO patern DTO
答案 1 :(得分:3)
在java中,您将声明一个包含三个字段的类。例如:
public class Person {
public String firstName;
public String lastName;
public String birthName;
}
(如果您愿意,也可以使用getter和setter方法)
然后,您可以将该类的实例存储在列表中:
List<Person> persons = new ArrayList<>();
Person person = new Person()
person.firstName = "Mario"
...
persons.add(person);
如果不允许创建新的Java文件(无论出于何种原因......),甚至可以将Person类包含在另一个类或接口中:
public class ExistingClass {
public static class Person {
...
}
...the rest of the the existing class...
}
答案 2 :(得分:1)
你应该创建一个类,它将从表格中保存一行数据。
喜欢:
Class Row {
int column1;
int column2;
int column3;
}
然后你应该创建一个这样的类对象的列表,如:List<Row>
。
通过这种方式,您可以遍历一个列表并访问所有列值,还可以在任何函数中返回列表。