Gespeicherte Prozeduren in Java und JPA aufrufen
Das Speichern von Geschäftslogik in gespeicherten Prozeduren verbessert die Leistung und die Wartbarkeit des Codes. In diesem Artikel werden zwei Methoden zum Aufrufen gespeicherter Prozeduren aus Java mithilfe von JPA untersucht: die CallableStatement-Methode und JPA 2.1 StoredProcedureQuery.
CallableStatement-Methode
Die CallableStatement-Klasse bietet eine vielseitige Methode zum Aufrufen gespeicherter Prozeduren. Sie können damit Eingabeparameter angeben und Ausgabeparameter oder Ergebnismengen abrufen. Es erfordert jedoch eine manuelle Zuordnung zwischen SQL-Typen und Java-Objekten, was mühsam sein kann.
JPA 2.1 StoredProcedureQuery
JPA 2.1 führte integrierte Unterstützung für den Aufruf gespeicherter Prozeduren ein. Die StoredProcedureQuery-Klasse vereinfacht diesen Prozess, indem sie Ihnen die Übergabe von Eingabeparametern und die Angabe einer Ergebnisklasse oder resultSetMapping ermöglicht.
Verwenden Sie JPA StoredProcedureQuery, um die gespeicherte Prozedur „getEmployeeDetails“ aufzurufen:
<code class="language-java">Query query = em.createNativeQuery("{call getEmployeeDetails(?,?)}", EmployeeDetails.class) .setParameter(1, employeeId) .setParameter(2, companyId); List<EmployeeDetails> result = query.getResultList();</code>
Vorteile der Verwendung von JPA zum Aufrufen gespeicherter Prozeduren
SQL-Anweisungen, die gespeicherte Prozeduren aufrufen
Die richtige SQL-Anweisung zum Aufrufen einer gespeicherten Prozedur lautet:
<code class="language-sql">{call getEmployeeDetails(?,?)}</code>
Hinweis: Schließen Sie den Namen der gespeicherten Prozedur in geschweifte Klammern ein und trennen Sie Parameter durch Kommas und Fragezeichen (?).
Weitere Hinweise:
Das obige ist der detaillierte Inhalt vonWie kann ich gespeicherte Prozeduren in Java mit JPA aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!