|
|
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Ни разу не пробовал, но знаю что можно. Есть хранимая функция на Oracle - myFunction(Date startDate, Date endDate). Возвращает список скалярных значений. Вызываю ее из бина Код: java 1. 2. 3. 4. 5. 6. 7. 8. Все ли я правильно делаю? Особенно беспокоит возвращаемое значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2012, 21:08:16 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
rus_sunНи разу не пробовал, но знаю что можно. Есть хранимая функция на Oracle - myFunction(Date startDate, Date endDate). Возвращает список скалярных значений. Вызываю ее из бина Код: java 1. 2. 3. 4. 5. 6. 7. 8. Все ли я правильно делаю? Особенно беспокоит возвращаемое значение. А, что не работает? Тоже разбирался недавно с вызовом процедуры, - толком не получалось... Потом сделал вот так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Так точно работает! У меня в проекте используется сейчас... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2012, 22:55:49 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Добрый день, rus_sun! > Есть хранимая функция на Oracle - myFunction(Date startDate, Date > endDate). Возвращает список скалярных значений. Полную сигнатуру функции дай. > List<Object[]> resultList = (List<Object[]>)em.createNativeQuery("{? = call myFunction(:startDate,:endDate)}") Query можно применять, только если эту функцию можно записать в select'е. Иначе нужно использовать CallableStatement. Для этого инъектится DataSource и вперёд. > Все ли я правильно делаю? Особенно беспокоит возвращаемое значение. Если это pipeline то одно, если коллекция- то вот даже не знаю- не приходилось из явы использовать. -- Алексей JID: alxt@ya.ru Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 09:20:55 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
GKS_Samara, спасибо, за помощь. Вот моя хранимая функция, это select Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 11:24:48 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Virtual Student, спасибо за помощь, если не добьюсь , чтобы мое заработало, сделаю как у Вас. А пока у меня вот такой stacktrace Код: xml 1. 2. 3. думаю это он на мой знак вопроса ругается, надо видимо туда подставлять какой-то параметр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 12:35:56 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Добрый день, rus_sun! > create or replace function mttIncommingReport1(startDate Date, endDate Date) > RETURN SYS_REFCURSOR is Не понимаю, что в яве можно сделать с рефкурсором. Т.е. может можно, но я считаю это невозможным :) Поэтому я б написал pipelined функцию и получал бы данные select'ом. -- Алексей JID: alxt@ya.ru Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 12:51:16 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
GKS_Samarapipelined функцию всё равно будет хранимка, т.е. в Java не заметим разницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 12:55:43 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Добрый день, Petro123! > pipelined функцию > всё равно будет хранимка, т.е. в Java не заметим разницы. Между pipelined и select'ом- да, не заметит :) -- Алексей JID: alxt@ya.ru Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2012, 13:47:46 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
GKS_Samara Поэтому я б написал pipelined функцию и получал бы данные select'ом. -- Алексей JID: alxt@ya.ru Был бы очень благодарен за пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.03.2012, 13:16:00 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Добрый день, rus_sun! > Был бы очень благодарен за пример. Все столбцы из запроса переписывать лень, поэтому сделаю для примера запроса двух колонок. В pl/sql: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. В яве дальше просто делаешь селект как из таблицы с текстом выше. -- Алексей JID: alxt@ya.ru Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2012, 08:40:47 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Добрый день! Вот что копипаст делает :) Так правильнее: Код: sql 1. 2. -- Алексей JID: alxt@ya.ru Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2012, 08:43:00 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Короче сделал вот так и работает на ура. Определю NamedQuery в orm.xml Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Затем в бине вызываю его Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2012, 15:46:27 |
|
||
|
Вызов хранимой функции из бина
|
|||
|---|---|---|---|
|
#18+
Как альтенатива NamedQuery можно еще задавать в аннотациях к Entity бинам Например, вот так Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2012, 15:48:16 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=59&tid=2132220]: |
0ms |
get settings: |
10ms |
get forum list: |
25ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
56ms |
get topic data: |
18ms |
get forum data: |
4ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 350ms |
| total: | 550ms |

| 0 / 0 |
