Я пытаюсь распечатать содержимое списка, но я получаю неправильные значения.Looping through List Java
([email protected]
) вместо результата запроса
Ниже боба
public class StudentModel {
int studentId;
String studentName;
public int getStudentId() {
return studentId;
}
public void setStudentId(int restaurantId) {
this.studentId = resturantId;
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
}
Метод запроса:
public static List<StudentModel> StudentDetails() {
Connection conn = connection.dbConnection();
List<StudentModel> students = new ArrayList<StudentModel>();
try {
String checkCst = "select * from student";
PreparedStatement stmt = conn.prepareStatement(checkCst);
ResultSet rCST = stmt.executeQuery();
while (rCST.next()) {
StudentModel rM = new StudentModel();
rM.setStudentId(rCST.getInt(1));
rM.setStudentName(rCST.getString(2));
students.add(rM);
}
} catch (Exception ex) {
ex.printStackTrace();
}
return students;
}
Это, как я пытался вызвать метод:
StudentModel rM = new StudentModel();
List<StudentModel> student = ListStudentDetails.StudentDetails();
for (int i = 0; i < student.size(); i++) {
System.out.println(" " + student.get(i));
System.out.println(" " + student.get(i));
}
Запрос работает нормально, поэтому я предполагаю, что проблема возникает в цикле for, когда я вызываю метод StudentDetails
.
спасибо.
'» ... но я я получаю неправильные значения »- пожалуйста, уточните. Какие значения вы видите и какие значения вы ожидаете? –
Вы не переопределяете 'toString' в классе' StudentModel'. –
Вы дважды печатаете один и тот же объект –