Za prvé, adresa URL připojení je nesprávná. Post 8080 běžně používá webový server jako Apache Tomcat. Samotný Oracle používá výchozí port 1521. Viz také tuto dokumentaci Oracle JDBC .
Dále jste zapomněli zavolat ResultSet#next()
. Tím se kurzor nastaví na další řádek v sadě výsledků. Sada výsledků je vrácena s kurzorem před první řada. Jakékoli getXXX()
volá na ResultSet
selže, pokud nepohnete kurzorem.
Pokud očekáváte více řádků v sadě výsledků, musíte použít while
smyčka:
resultSet = statement.executeQuery();
while (resultSet.next()) {
String columnname = resultSet.getString("columnname");
// ...
}
Nebo pokud očekáváte pouze jeden řádek, můžete také pokračovat s if
prohlášení:
resultSet = statement.executeQuery();
if (resultSet.next()) {
String columnname = resultSet.getString("columnname");
// ...
}
Další rady a příklady použití základní JDBC správným způsobem (také v JSP/Servlet) můžete najít tento článek užitečný. Způsob, jakým jste například uzavřeli příkaz a připojení, je náchylný k úniku zdrojů. Také načítání ovladače JDBC na požadavek GET je zbytečně drahé. Stačí to udělat jednou během spouštění aplikace nebo inicializace servletu.