JDBC (Java Database Connectivity) es la API estándar para conectar Java con bases de datos relacionales. Dominar JDBC es esencial antes de usar frameworks como JPA/Hibernate.
1) Dependencia del driver
Si usas Maven, normalmente añades el driver de PostgreSQL en tu pom.xml.
2) DatabaseConnection: centralizar la conexión
public class DatabaseConnection {
private final String url;
private final String user;
private final String password;
public DatabaseConnection(String url, String user, String password) {
this.url = url;
this.user = user;
this.password = password;
}
public Connection connect() throws SQLException {
return DriverManager.getConnection(url, user, password);
}
}
3) Consulta con PreparedStatement
String sql = "SELECT id, name FROM birds WHERE id = ?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
4) Mapear ResultSet a objeto
Bird bird = null;
if (rs.next()) {
bird = new Bird(rs.getInt("id"), rs.getString("name"));
}
5) Cerrar recursos (importante)
Usa try-with-resources para cerrar automáticamente:
try (PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setInt(1, id);
try (ResultSet rs = ps.executeQuery()) {
// leer rs
}
}
6) Errores típicos
- URL incorrecta (host/puerto/db).
- Driver no incluido o versión incompatible.
- Problemas de permisos del usuario SQL.
- No cerrar conexiones (fugas).
