2017-01-17 1 views
0

Ich sehe einen Code, der eine gespeicherte Prozedur mithilfe der Methode execute in der Klasse org.springframework.jdbc.object.StoredProcedure aufruft. Eine Map wird als Eingabe für diese Methode übergeben. Der Name der gespeicherten Prozedur oder der Funktionsname, der übergeben wird, wird jedoch nicht als Eingabe übergeben. Wie stellt Spring sicher, dass die korrekte Funktion innerhalb der gespeicherten Prozedur ausgeführt wird?Aufruf von Oracle Stored Procedure mit StoredProcedure von Spring Framework

map.put(FAULT_CODE, faultCode); 
    map.put(FAULT_MESSAGE, faultMessage); 
    Map result = this.execute(map); 

Antwort

1

Die org.springframework.jdbc.object.StoredProcedure hat 3 Konstruktoren:

für Bohnen

protected StoredProcedure() 
Allow use as a bean. 

Für die Verwendung mit Datenquelle:

protected StoredProcedure(DataSource ds, 
          String name) 

//name - name of the stored procedure in the database 

für create wrapper:

protected StoredProcedure(JdbcTemplate jdbcTemplate, 
          String name) 
//name - name of the stored procedure in the database 

Im zweiten und dritten Fall geben Sie den Namen der gespeicherten Prozedur bei der Erstellung an. Ich nehme an, einer davon ist dein Fall.

Verwandte Themen