Я, имеющий этот методResultSet следующий() возвращает только одну строку
public List<Course> getCourses() throws InvalidCourseDataException {
ArrayList<Course> allCoursesFromDB = new ArrayList<>();
Connection dbConnection = null;
String getFromTableSQL = "SELECT * FROM courses";
try {
dbConnection = getDBConnection();
statement = dbConnection.createStatement();
resultSet = statement.executeQuery(getFromTableSQL);
while (resultSet.next()) {
String courseCategory = resultSet.getString("course_category");
String courseTitle = resultSet.getString("course_title");
int courseId = resultSet.getInt("course_id");
Date startDate = resultSet.getTimestamp("starting_date");
Date endDate = resultSet.getDate("ending_date");
String description = resultSet.getString("description");
int teacherId = resultSet.getInt("teacher_id");
Course course = new Course(courseCategory, courseTitle, startDate, endDate);
course.setCourseId(courseId);
course.setTeacherId(teacherId);
course.setDescription(description);
addParticipantsIdToCourse(course);
allCoursesFromDB.add(course);
}
Метод getDBConnection() является частных статических соединения getDBConnection() {
System.out.println("-------- MySQL JDBC Connection Testing ------------");
Connection dbConnection = null;
try {
Class.forName(DB_DRIVER);
} catch (ClassNotFoundException e) {
System.out.println(e.getMessage());
}
try {
dbConnection = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
return dbConnection;
} catch (SQLException e) {
System.out.println(e.getMessage());
}
return dbConnection;
}
Моя проблема заключается в том, что Resultset .next() возвращает только первую строку из БД. Я уверен, что у меня несколько строк. Я видел JDBC ResultSet is giving only one row although there are many rows in table? этот вопрос, но он действительно не отвечает на мой вопрос :)
как вы думаете, что он только возвращает? Отлаженная? Некоторые результаты? – Jan
Вы уверены, что вы подключены к нужной базе данных? –
Когда я отлаживаю, я вижу, что в мой ArrayList добавлен только один курс. И да, я абсолютно уверен в БД –