ストアド・プロシージャは、データベース内に存在し、データベース内で実行されるプログラムです。アプリケーション開発者は、ストアド・プロシージャを使用し、データベース・アプリケーションのパフォーマンスを改善できます。ストアド・プロシージャは一度だけコンパイルされ、実行可能な形態で格納されるため、プロシージャ・コールは高速で効率的です。ストアド・プロシージャはRDBMSメモリー領域で実行されるため、複雑なファンクションはクライアントで実行されるルーチンより高速です。また、ストアド・プロシージャを使用してPL/SQL文をグループ化し、これらを1回のコールで実行できます。こうすることでネットワーク・トラフィックが減少し、ラウンドトリップの応答時間が改善されます。共通のストアド・プロシージャを使用したアプリケーションを設計することで、冗長なコーディングを避け、生産性を向上させることができます。
Javaストアド・プロシージャには、一般的な使用に備えてPL/SQLに公開され、Oracleデータベースに格納されているJava public staticメソッドが含まれています。Javaメソッドを公開するには、Javaメソッド名、パラメータ・タイプおよび戻り型を対応するPL/SQLに割り当てるコール仕様を作成します。これにより、Javaストアド・プロシージャを、PL/SQLストアド・プロシージャと同様にアプリケーションから実行できます。クライアント・アプリケーションからコールされた場合、Javaストアド・プロシージャは引数を受け入れ、Javaクラスを参照し、Java結果値を返します。
任意のJavaクラスをOracle9i にデプロイし、クラスの準拠しているメソッドをPL/SQLにストアド・プロシージャとして公開できます。これらのJavaストアド・プロシージャは、PL/SQLストアド・プロシージャと同様にアプリケーションから実行できます。Javaストアド・プロシージャを、アプリケーションの、Oracle9i にデプロイされた他の(JavaおよびJava以外の)プロシージャへのエントリ・ポイントとして使用できます。
Javaストアド・プロシージャをOracle9i にデプロイおよび公開すると、公開用に選択した各メソッドのPL/SQLラッパーとして機能するコール仕様が生成されます。これらのラッパーは、PL/SQLを使用してOracle9i のデータにアクセスする任意のエンタープライズ・アプリケーションから、PL/SQL問合せを使用してコールできます。
Javaストアド・プロシージャを使用したアプリケーション・パフォーマンスの改善
データベースの参照