Автор оригинала: mkyong.
Пример инструкции JDBC для выбора списка строк из базы данных.
package com.mkyong.jdbc.statement.row; import com.mkyong.jdbc.model.Employee; import java.math.BigDecimal; import java.sql.*; public class RowSelect { public static void main(String[] args) { String sql = "SELECT * FROM EMPLOYEE"; try (Connection conn = DriverManager.getConnection( "jdbc:postgresql://127.0.0.1:5432/test", "postgres", "password"); Statement statement = conn.createStatement()) { ResultSet resultSet = statement.executeQuery(sql); while (resultSet.next()) { long id = resultSet.getLong("ID"); String name = resultSet.getString("NAME"); BigDecimal salary = resultSet.getBigDecimal("SALARY"); Timestamp createdDate = resultSet.getTimestamp("CREATED_DATE"); Employee obj = new Employee(); obj.setId(id); obj.setName(name); obj.setSalary(salary); // Timestamp -> LocalDateTime obj.setCreatedDate(createdDate.toLocalDateTime()); System.out.println(obj); } } catch (SQLException e) { System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); } } }
package com.mkyong.jdbc.model; import java.math.BigDecimal; import java.time.LocalDateTime; public class Employee { private Long id; private String name; private BigDecimal salary; private LocalDateTime createdDate; //... }
Определение таблицы.
CREATE TABLE EMPLOYEE ( ID serial, NAME varchar(100) NOT NULL, SALARY numeric(15, 2) NOT NULL, CREATED_DATE timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP PRIMARY KEY (ID) );
P.S Протестировано с PostgreSQL 11 и Java 8
org.postgresql postgresql 42.2.5
Скачать Исходный Код
Рекомендации
- PostgreSQL – ВЫБИРАТЬ
- Результирующий набор Javadoc
- Заявление JavaDocs
- Учебные пособия по Java JDBC
Оригинал: “https://mkyong.com/jdbc/jdbc-statement-example-select-list-of-the-records/”