Tout d'abord, l'URL de connexion est erronée. Post 8080 est normalement utilisé par un serveur Web comme Apache Tomcat. Oracle lui-même utilise un port par défaut de 1521. Voir également cette documentation Oracle JDBC .
De plus, vous avez oublié d'appeler ResultSet#next()
. Cela placera le curseur sur la ligne suivante dans le jeu de résultats. Le jeu de résultats est renvoyé avec le curseur avant la première rangée. Tout getXXX()
appelle le ResultSet
échouera si vous ne déplacez pas le curseur.
Si vous attendez plusieurs lignes dans un jeu de résultats, vous devez utiliser while
boucle :
resultSet = statement.executeQuery();
while (resultSet.next()) {
String columnname = resultSet.getString("columnname");
// ...
}
Ou si vous n'attendez qu'une seule ligne, vous pouvez également continuer avec un if
déclaration :
resultSet = statement.executeQuery();
if (resultSet.next()) {
String columnname = resultSet.getString("columnname");
// ...
}
Pour plus d'astuces et d'exemples d'utilisation de de base JDBC dans le bon sens (également dans JSP/Servlet), vous pouvez trouver cet article utile. La façon dont vous avez fermé l'instruction et la connexion, par exemple, est sujette à des fuites de ressources. De plus, le chargement du pilote JDBC sur requête GET est inutilement coûteux. Faites-le une seule fois lors du démarrage de l'application ou de l'initialisation du servlet.