Witam,
zrobiłem prostą aplikacja która na wejściu z formularza graficznego przyjmuje dwa parametry.
Parametry przypisywane są do atrybutów obiektu "Confirmatordoc ". Następnie uruchamiana jest metoda odpowiedzialna za podłączenie do bazy danych oraz uruchomienie procedury PL/Sql. Procedura na wejściu otrzymuje wcześniej wpisane atrybuty, wykonuje swoją robotę i zwraca na konsole wynik z wykorzystaniem parametru typu out.
Moim zadaniem jest wyświetlenie tego wyniku nie na konsoli a na formularzu gdzie użytkownik wpisał parametry wejściowe. Jak to zrobić?
klasa odpowiedzialna za wykonanie procedury:
package getproc;
import static getproc.DbConnector.getDBConnection;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
public class Confirmator {
public static void Wywolanie(Confirmatordoc c) throws SQLException {
Connection dbConnection = null;
CallableStatement callableStatement = null;
String ACKTEST= "{call ACKTEST(?,?,?)}";
try {
dbConnection = getDBConnection();
callableStatement = dbConnection.prepareCall(ACKTEST);
callableStatement.setInt(1, c.getIdWZk());
callableStatement.setInt(2, c.getIdWZ());
callableStatement.registerOutParameter(3, java.sql.Types.VARCHAR);
// execute getDBUSERByUserId store procedure
callableStatement.executeUpdate();
String wynik = callableStatement.getString(3);
System.out.println("wynik : " + wynik);
} catch (SQLException e) {
System.out.println(e.getMessage());
} finally {
if (callableStatement != null) {
callableStatement.close();
}
if (dbConnection != null) {
dbConnection.close();
}
}
}
}
Oraz moment w którym wykonuje metody po przyciśnięciu w przycisk "Wykonaj"
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String idWZk = jTextField1.getText();
String idWZ = jTextField2.getText();
Integer idWZkLiczba = new Integer(idWZk);
Integer idWZLiczba = new Integer(idWZ);
try {
Confirmatordoc conf = new Confirmatordoc();
conf.setIdWZk(idWZkLiczba);
conf.setIdWZ(idWZLiczba);
Confirmator cDao = new Confirmator();
cDao.Wywolanie(conf);
System.out.println();
} catch (Exception e) {
System.out.println("błąd danych wejściowych:" + e.getMessage());
}
}