Wywołanie kodu JAVA z ESQL
Autor: Marcin Kasiński
21.01.2011 13:24:00 +0200
W przypadku modułów ESQL istnieje możliwość wywołania metod JAVA prosto z kodu ESQL. Funkcjonalność polega na tym, że poza projektem z przepływami tworzymy projekt JAVA, który wskazujemy jako referencje w projekcie z przepływem. W efekcie w pliku bar poza przepływem deployuje się plik jar powstały z projektu JAVA i zawierający kod, który chcemy z ESQL wywołać. Następnie wewnątrz ESQL deklarujemy zewnętrzną procedurę JAVA, której parametry wejściowe i parametr wyjściowy odpowiadają parametrom kodu Java. Ważne jest, że metoda JAVA, która chcemy wywołać z kodu ESQL musi być typu static. Przykład procedury ESQL:
CREATE PROCEDURE getRecords (IN cursor REFERENCE, IN queue_in CHARACTER ,IN host CHARACTER , IN port INTEGER , IN database CHARACTER, IN user CHARACTER, IN password CHARACTER ) RETURNS BOOLEAN LANGUAGE JAVA EXTERNAL NAME "dbrouting.DBRouter.getRecords";
Kod Java
public static Boolean getRecords(MbElement tab, String queue_in ,String host ,Long port ,String database, String user, String password ) { return true; }
Poniższa lista zawiera mapowanie typów danych pomiędzy ESQL a JAVA
ESQL | JAVA IN | JAVA INOUT i OUT |
---|---|---|
INTEGER | Long | Long[] |
FLOAT | Double | Double[] |
DECIMAL | BigDecimal | BigDecimal[] |
CHARACTER | String | String[] |
BLOB | byte | byte[] |
BIT | BitSet | BitSet[] |
DATE | com.ibm.broker.plugin.MbDate | com.ibm.broker.plugin.MbDate[] |
TIME | com.ibm.broker.plugin.MbTime | com.ibm.broker.plugin.MbTime[] |
GMTTIME | com.ibm.broker.plugin.MbTime | com.ibm.broker.plugin.MbTime[] |
TIMESTAMP | com.ibm.broker.plugin.MbTimestamp | com.ibm.broker.plugin.MbTimestamp[] |
GMTTIMESTAMP | com.ibm.broker.plugin.MbTimestamp | com.ibm.broker.plugin.MbTimestamp[] |
INTERVAL | Brak | Brak |
BOOLEAN | Boolean | Boolean[] |
REFERENCE | com.ibm.broker.plugin.MbElement | com.ibm.broker.plugin.MbElement[] |
ROW | Brak | Brak |
LIST | Brak | Brak |
Komentarze
Dodaj Komentarz
Newsletter
Jeżeli chcesz być na bieżąco informowany o aktualnościach i poradach IT zapisz się do naszego newslettera.