Как я могу отобразить табличные данные с помощью хранимой процедуры Java? - PullRequest
1 голос
/ 05 февраля 2012

В настоящее время я тестирую некоторые stored procedures в JAVA на oracle db, поэтому я попытался отобразить все сущности emp.

Поэтому мой вопрос заключается в том, как отобразить всю таблицу целиком.хранимая процедура Java?

Это то, что я пытался:

create or replace and compile java source named getEMP
as
import java.sql.*;
import java.util.*;
public class Example{
    public static void showEmp() throws SQLException, ClassNotFoundException {
            ResultSet rs;
            Properties p = new Properties();
            p.put("user", "user");
            p.put("password","password");
            String strCon = "Connection String";

            Class.forName("oracle.jdbc.OracleDriver"); 
            Connection con = DriverManager.getConnection(strCon, p);

            Statement stmt;

            con = DriverManager.getConnection(strCon, p);
            String query =
                    "select empno, ename, deptno, sal, comm " +
                    "from emp";

            stmt = con.createStatement();
            rs = stmt.executeQuery(query);

        //Display the ResultSet
    }
}

Моя проблема в этом методе заключается в том, что я не могу использовать System.out.println("");.После этого ничего не отображается:

create or replace procedure showEmp
as language java name 'Example.showEmp()';

exec showEmp;

Заранее спасибо!

1 Ответ

0 голосов
/ 05 февраля 2012

Вы должны убедиться, что вывод сервера включен, а также перенаправить вывод Java на него.В SQL * PLus это можно сделать с помощью следующих двух операторов:

SQL> set serveroutput on;
SQL> call dbms_java.set_output(20000);

Максимальный размер буфера - число 20000, такое же, как в DBMS_OUTPUT.

.exec showEmp; вы сможете увидеть результаты распечатки вызова System.out.println().

...