Интерфейс, который используется для хранения и управления результатами SQL-запроса типа
SELECT к базе данных. Он позволяет Java-программе извлекать и обрабатывать данные, возвращаемые запросом.🚩Почему это нужно?
🟠Получения данных
Когда выполняется запрос
SELECT, база данных возвращает данные в виде таблицы. ResultSet позволяет получить эти данные и работать с ними в Java-коде.🟠Обработки данных
ResultSet предоставляет методы для навигации по данным и извлечения значений из текущей строки.🟠Управления данными
ResultSet включает методы для перемещения курсора по строкам данных и доступа к столбцам по имени или индексу.🚩Как это используется?
1⃣Создание запроса и выполнение его
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM employees");
2⃣Навигация по данным
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
double salary = rs.getDouble("salary");
System.out.println("ID: " + id + ", Name: " + name + ", Salary: " + salary);
} 🚩Основные методы
🟠next()
Перемещает курсор к следующей строке.
rs.next();
🟠getInt(), getString(), getDouble() и другие get-методы
Извлекают данные из текущей строки.
int id = rs.getInt("id");
String name = rs.getString("name");
double salary = rs.getDouble("salary"); 🟠close()
Закрывает
ResultSet и освобождает связанные с ним ресурсы. rs.close();
🟠getMetaData()
Возвращает объект
ResultSetMetaData, содержащий метаданные о результирующем наборе данных, такие как количество столбцов и их типы. ResultSetMetaData metaData = rs.getMetaData();
int columnCount = metaData.getColumnCount();
🚩Пример использования
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class ResultSetExample {
public static void main(String[] args) {
try {
// Подключение к базе данных
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "user", "password");
// Создание Statement и выполнение запроса
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT id, name, salary FROM employees");
// Обработка результатов
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
double salary = rs.getDouble("salary");
System.out.println("ID: " + id + ", Name: " + name + ", Salary: " + salary);
}
// Закрытие ResultSet и Statement
rs.close();
stmt.close();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Ставь 👍 и забирай 📚 Базу знаний