Heim > Datenbank > Oracle > Hauptteil

Die gespeicherte Oracle-Prozedur ruft Java auf

王林
Freigeben: 2023-05-07 19:43:39
Original
915 Leute haben es durchsucht

Gespeicherte Oracle-Prozeduren können über Java-Programme aufgerufen werden. Dies ist eine Möglichkeit, mithilfe der Java-Technologie auf die Datenbank zuzugreifen. In diesem Artikel wird erläutert, wie gespeicherte Prozeduren mit Java kombiniert werden, und es werden relevante Beispielcodes bereitgestellt.

1. Verwenden Sie JDBC, um auf die Oracle-Datenbank zuzugreifen.

Java Database Connectivity (JDBC) ist eine Standard-API für die Verbindung zu verschiedenen Datenbanken, einschließlich der Oracle-Datenbank. Bevor Sie JDBC für den Zugriff auf die Oracle-Datenbank verwenden, müssen Sie die folgenden Schritte ausführen:

1. Laden Sie die Oracle-Datenbank herunter und installieren Sie sie.

2. Laden Sie das Java Development Kit (JDK) herunter und installieren Sie es.

3. Laden Sie den Oracle JDBC-Treiber herunter und installieren Sie ihn.

Es gibt zwei Möglichkeiten, den Oracle JDBC-Treiber herunterzuladen:

-Offizieller Website-Download von Oracle: https://www.oracle.com/database/technologies/jdbc-drivers-12c-downloads.html

-Maven-Abhängigkeit:

<dependency>
    <groupId>com.oracle.jdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>12.2.0.1</version>
</dependency>
Nach dem Login kopieren

4. Konfigurieren Sie die Datenbankverbindungsinformationen.

Zu den Datenbankverbindungsinformationen gehören normalerweise:

-Der Hostname oder die IP-Adresse der Datenbank.

-Port der Datenbank.

– Der Name der Datenbank.

- Benutzername und Passwort für die Datenbank.

Datenbankverbindungsinformationen können auf folgende Weise konfiguriert werden:

String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "username";
String password = "password";
Nach dem Login kopieren

5.

Verwenden Sie den folgenden Code, um eine Verbindung zur Datenbank herzustellen:

Connection connection = DriverManager.getConnection(url, user, password);
Nach dem Login kopieren

Unter diesen akzeptiert die Methode DriverManager.getConnection drei Parameter: URL, Benutzername und Passwort. DriverManager.getConnection 方法接受三个参数:URL,用户名和密码。

连接到数据库后,就可以使用 Java 程序来执行各种操作,如查询、插入、更新和删除。

二、Oracle 存储过程简介

存储过程是一种预先编译过的程序,能够执行一系列 SQL 语句以完成特定的任务。存储过程具有以下优点:

-提高了性能:存储过程是预先编译的,可以减少执行时间并提高性能。

-提高了安全性:存储过程可以确保权限仅限于授权用户。

-简化编程:存储过程可以封装一些通用的业务逻辑,减少代码重复。

三、Java 调用 Oracle 存储过程

在 Java 中调用存储过程的过程分为以下步骤:

1.创建 CallableStatement。

使用以下代码创建 CallableStatement:

CallableStatement cstmt = conn.prepareCall("{?= call procedure_name(?, ?, ...)}");
Nach dem Login kopieren

其中,conn 为数据库连接对象,procedure_name 为存储过程名称。

?= 表示返回值,? 表示输入参数。

2.为输入参数设置值。

使用以下代码为输入参数设置值:

cstmt.setString(2, "input_param");
Nach dem Login kopieren

其中,2 表示应该设置为第二个参数的值,"input_param" 是实际的输入参数值。

3.注册输出参数。

如果存储过程包括返回值或输出参数,则需要通过 registerOutParameter 方法进行注册。例如:

cstmt.registerOutParameter(1, Types.INTEGER);
Nach dem Login kopieren

其中,1 表示第一个参数是返回值,Types.INTEGER 表示返回值类型为整数。

4.执行存储过程。

执行存储过程的代码如下:

cstmt.execute();
Nach dem Login kopieren

5.获取返回值或输出参数。

如果存储过程包括返回值或输出参数,则可以使用以下代码获取结果:

int result = cstmt.getInt(1);
Nach dem Login kopieren

其中,1

Sobald Sie mit der Datenbank verbunden sind, können Sie Java-Programme verwenden, um verschiedene Vorgänge wie Abfragen, Einfügen, Aktualisieren und Löschen auszuführen.

2. Einführung in gespeicherte Oracle-Prozeduren

Eine gespeicherte Prozedur ist ein vorkompiliertes Programm, das eine Reihe von SQL-Anweisungen ausführen kann, um eine bestimmte Aufgabe auszuführen. Gespeicherte Prozeduren haben die folgenden Vorteile:

- Verbesserte Leistung: Gespeicherte Prozeduren sind vorkompiliert, was die Ausführungszeit verkürzt und die Leistung verbessert.

– Verbesserte Sicherheit: Gespeicherte Prozeduren stellen sicher, dass Berechtigungen auf autorisierte Benutzer beschränkt sind. 🎜🎜-Programmierung vereinfachen: Gespeicherte Prozeduren können einige gängige Geschäftslogiken kapseln und die Codeduplizierung reduzieren. 🎜🎜3. Java ruft gespeicherte Oracle-Prozeduren auf🎜🎜Der Prozess des Aufrufs gespeicherter Prozeduren in Java ist in die folgenden Schritte unterteilt:🎜🎜1 Erstellen Sie eine CallableStatement. 🎜🎜Verwenden Sie den folgenden Code, um ein CallableStatement zu erstellen: 🎜
try {
    Class.forName("oracle.jdbc.driver.OracleDriver");  // 加载 JDBC 驱动
    Connection conn = DriverManager.getConnection(url, user, password);  // 连接到数据库
    CallableStatement cstmt = conn.prepareCall("{?= call procedure_name(?, ?)}");  // 创建 CallableStatement

    cstmt.registerOutParameter(1, Types.INTEGER);  // 注册输出参数

    cstmt.setString(2, "input_param1");  // 设置输入参数
    cstmt.setString(3, "input_param2");

    cstmt.execute();  // 执行存储过程

    int result = cstmt.getInt(1);  // 获取结果

    conn.close();  // 关闭数据库连接
} catch (Exception e) {
    e.printStackTrace();
}
Nach dem Login kopieren
🎜Wobei conn das Datenbankverbindungsobjekt und procedure_name der Name der gespeicherten Prozedur ist. 🎜🎜?= stellt den Rückgabewert dar und ? stellt den Eingabeparameter dar. 🎜🎜2. Werte für Eingabeparameter festlegen. 🎜🎜Verwenden Sie den folgenden Code, um den Wert für den Eingabeparameter festzulegen: 🎜rrreee🎜wobei 2 den Wert darstellt, der auf den zweiten Parameter gesetzt werden soll, und "input_param" ist der tatsächliche Eingabeparameterwert. 🎜🎜3. Ausgabeparameter registrieren. 🎜🎜Wenn die gespeicherte Prozedur Rückgabewerte oder Ausgabeparameter enthält, muss sie über die Methode registerOutParameter registriert werden. Zum Beispiel: 🎜rrreee🎜 Unter diesen bedeutet 1, dass der erste Parameter der Rückgabewert ist, und Types.INTEGER bedeutet, dass der Rückgabewerttyp eine Ganzzahl ist. 🎜🎜4. Führen Sie die gespeicherte Prozedur aus. 🎜🎜Der Code zum Ausführen der gespeicherten Prozedur lautet wie folgt: 🎜rrreee🎜5. Rufen Sie den Rückgabewert oder die Ausgabeparameter ab. 🎜🎜Wenn die gespeicherte Prozedur Rückgabewerte oder Ausgabeparameter enthält, können Sie den folgenden Code verwenden, um die Ergebnisse zu erhalten: 🎜rrreee🎜Wobei 1 bedeutet, dass der erste Parameter der Rückgabewert ist. 🎜🎜Zusammenfassend lautet der Beispielcode zum Aufrufen gespeicherter Oracle-Prozeduren aus Java wie folgt: 🎜rrreee🎜Der obige Code zeigt, wie man eine Verbindung zu einer Oracle-Datenbank herstellt, ein CallableStatement erstellt und eine gespeicherte Prozedur ausführt. 🎜🎜Fazit🎜🎜In diesem Artikel wird erläutert, wie Sie mit Java-Programmen auf die Oracle-Datenbank zugreifen und gespeicherte Prozeduren aufrufen. Die Verwendung gespeicherter Prozeduren vereinfacht die Programmierung und verbessert Leistung und Sicherheit. Durch die Kombination von Java-Technologie mit gespeicherten Prozeduren können Sie effizienter auf Oracle-Datenbanken zugreifen und diese betreiben. 🎜

Das obige ist der detaillierte Inhalt vonDie gespeicherte Oracle-Prozedur ruft Java auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!