|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Доброго дня господа ! Необходимо передать и принять данные в типе Array (архитектуру класса не менять) Подскажите плис Код: 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. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73.
Повторно - архитектуру класса не менять - он является основополагающим и внедрен в базу данных _span_row[0]=((OracleConnection) DriverManager.getConnection("jdbc:default:connection")).createARRAY("FDNBI",span_row); Буду признателен за пример и исправление в коде ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2018, 11:10 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_X, Вы слышали что такое Java Code Conventions ? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2018, 12:06 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
TsyklopВы слышали что такое код чужой наверняка ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2018, 12:57 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Tsyklop, Вас смутил скрокозябренный формат ? Исправляюсь Код: 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. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 01:47 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
chpashaTsyklopВы слышали что такое код чужой наверняка Безусловно, код подключение массива из базы взят из HELP-ы (можно поискать источник если это важно) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 01:49 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_X, Вас должно смущать названия классов, переменных, параметров. Такой код невозможно читать. Зачем передаётся массив, если берется один элемент? Попробуйте оптимизировать код, улучшить. Глядите и сами сделаете то что нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 10:40 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
TsyklopЗачем передаётся массив, если берется один элемент? Код не смотрел, но не вижу ничего страшного в этом. Если метод используется в одном месте где берется больше одного элемента, а в другом только один, то логично, что нужно так и оставить, чтобы не городить под каждый вариант свои реализации. Всё же от постановки задач зависит... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 11:47 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
TsyklopHOME_X, Вас должно смущать названия классов, переменных, параметров. Такой код невозможно читать. Зачем передаётся массив, если берется один элемент? Попробуйте оптимизировать код, улучшить. Глядите и сами сделаете то что нужно. Все зависит от того с какого языка Вы начинали свою деятельность в IT и что мило и привычно Вашему пониманию Первичный вопрос звучал - как организовать заполнение массива (типа java.sql.Array) - РУЦАМИ !!!!!!!!! // нижеприведенный блок должен писать в _span_row[0] // аналогично _span_row[0]=((OracleConnection)DriverManager.getConnection("jdbc:default:connection")).createARRAY("FDNBI",span_row); // можно ли использовать тип java.sql.Array и непосредственно писать в него // http://www.javased.com/?api=java.sql.Array - это возможные примеры // текущий прием с передачей указателя на собственный объект мне кажется неудачным Можете подсказать именно этот вопрос. P.S. Относительно "массива - если заполнен один элемент" это передача переменных из базы по ССЫЛКЕ (рекомендации и уроки Oracle Database Programming Using Java and Web Services от Kuassi Mensah) Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 12:22 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
NixicTsyklopЗачем передаётся массив, если берется один элемент? Код не смотрел, но не вижу ничего страшного в этом. Если метод используется в одном месте где берется больше одного элемента, а в другом только один, то логично, что нужно так и оставить, чтобы не городить под каждый вариант свои реализации. Всё же от постановки задач зависит... Если не сложно оцените плис Меня интересует как public static void Oracle( Nbi_Exe _this, String _id_contract_sap[], NUMBER _total_price[], NUMBER _duration_fate[], Array _span_row[] <------- внести элементы массива НЕ !!! ссылаясь на механизмы базы Oracle ) _span_row[0]=((OracleConnection)DriverManager.getConnection("jdbc:default:connection")).createARRAY("FDNBI",span_row); Этой строки не должно быть, массив заполнить циклом и прочитать в конструкторе Nbi_Exe тоже циклом. Сумеете помочь ? Если возникли вопросы - спрашивайте (сигнатуры функции менять нельзя) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 12:27 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_X, Это моя прихоть, а принятые условности для всех. Это есть в каждом языке. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 12:29 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
TsyklopHOME_X, Это моя прихоть, а принятые условности для всех. Это есть в каждом языке. Не моя прихоть. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 12:32 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
В данный момент мне хватает джаваскрипта в реакте, с редаксом, со сторами и прочим, и плюс мешаниной из всего этого с присмесью к этому дтоошек, сущностей, процедур в оракле, вьюх и таблиц. И ВЕЗДЕ БЛ%;Ь названия полей по разному пишутся, те только кемелКейс где-то есть, где-то есть, но и сами названия. И их десятки для каждого элемента бизнес-процесса, а в сумме сотни. А еще документацию на процедуры базисты толком не пишут, да и на либы на джаве свои же сотрудники толком не дают описания. Так что, перепишите, пожалуйста, код на человеческий язык, очень не хочется во что-то вникать, что вот так вот написано. Я даже на англ. не стал переключаться, чтоб этот текст написать, до того устал от всего, а тут еще код в таком виде))) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2018, 23:06 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XTsyklopHOME_X, Вас должно смущать названия классов, переменных, параметров. Такой код невозможно читать. Зачем передаётся массив, если берется один элемент? Попробуйте оптимизировать код, улучшить. Глядите и сами сделаете то что нужно. Все зависит от того с какого языка Вы начинали свою деятельность в IT и что мило и привычно Вашему пониманию неа не зависит. есть конвенция, есть требования. конечно вас никто не заставит писать так как НАДО и вы можете писать так как хочу.. но... я не спорю что написанное гамном на стене тоже читать можно :) но как-то неприятно чтоле. дайте угадаю, какой язык вы тащите сюда.. эээ.... паскаль? турбо паскаль? )) еще и форматирование с равном по центру ))) вы это руками чтоль так выставляли каждый раз? не лень было? нажмите ctrl-alt-L ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 00:33 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
TsyklopHOME_X, Вас должно смущать названия классов, переменных, параметров. Такой код невозможно читать. Зачем передаётся массив, если берется один элемент? Попробуйте оптимизировать код, улучшить. Глядите и сами сделаете то что нужно. по ходу не хочут передавать по значению примитив и решают хитрый план из девяностых - передать массив с одним значением чтоб перешло по значению ссылки. а? а? а? а код конечно да. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 00:41 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XTsyklopHOME_X, Вас должно смущать названия классов, переменных, параметров. Такой код невозможно читать. Зачем передаётся массив, если берется один элемент? Попробуйте оптимизировать код, улучшить. Глядите и сами сделаете то что нужно. Все зависит от того с какого языка Вы начинали свою деятельность в IT и что мило и привычно Вашему пониманию Первичный вопрос звучал - как организовать заполнение массива (типа java.sql.Array) - РУЦАМИ !!!!!!!!! // нижеприведенный блок должен писать в _span_row[0] // аналогично _span_row[0]=((OracleConnection)DriverManager.getConnection("jdbc:default:connection")).createARRAY("FDNBI",span_row); // можно ли использовать тип java.sql.Array и непосредственно писать в него // http://www.javased.com/?api=java.sql.Array - это возможные примеры // текущий прием с передачей указателя на собственный объект мне кажется неудачным Можете подсказать именно этот вопрос. P.S. Относительно "массива - если заполнен один элемент" это передача переменных из базы по ССЫЛКЕ (рекомендации и уроки Oracle Database Programming Using Java and Web Services от Kuassi Mensah) Спасибо вроде на русском написано )) а вроде и нет... чот я ничо не понимаю )) тебе что надо то? если ты хочешь передать по "ссылке" (вернее, по значению ссылки) и это не примитив -- то просто передавай как обычный объект и всё. по значению передаются только примитивы. твой Аррай -- не примитив. далее.. ты говоришь "как заполнить массив". ты про какой массив вещаешь? Array[] -- это прости за тафталогию, но уже массив массивов. причем, первый это массив в буквальном смысле слова, а второй - это массив как некий класс "Массив", который нифига не массив который массив. вообще исходник - жесть. жестяная жесть. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 01:08 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Если у вас не какой то особенный проект, то не пользуйтесь типами оракле при работе с ним. Оракл позволяет работать с массивами, xml, звуками сетями и картами. Но лучше считать что оракл это постгри или обычная база. Либо выкинуть этот код и передать массив в хранимку jdbc. Тогда будет один желающий из тысячи мемберов. Увы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 07:24 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XПервичный вопрос звучал - как организовать заполнение массива (типа java.sql.Array) - [u][b]РУЦАМИ !!!!!!!!! Типа такого? Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 09:02 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Божественно! ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 10:17 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XПодскажите плис подсказывать нечего, т.к. ты не написал, какая и где ошибка или проблема Глядя в хрустальный шар, я бы сказал, что вместо java.math.BigDecimal было бы хорошо использовать типы java.sql. Например https://docs.oracle.com/cd/E16338_01/appdev.112/e13995/oracle/sql/NUMBER.html ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2018, 17:16 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Denis PopovТипа такого? Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
Извините господа - малость выпал из диалога ! Denis, заполните и прочитайте тип array циклом - без ссылки на базу (без класса con ) Возможно ли ? Integer[] intValues = {1, 2, 3, 4, 5}; Array array = con.createOracleArray("SYS.ODCINUMBERLIST", intValues); Подобный код уже имею - _span_row[0]=((OracleConnection) DriverManager.getConnection("jdbc:default:connection")).createARRAY("FDNBI",span_row); он НЕ !!!!! универсален, применительно к моей задаче Здесь набор примеров = http://www.javased.com/?api=java.sql.Array Пытался сделать базируясь на них ... Спасибо за Ваш труд (код) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2018, 23:06 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XDenis, заполните и прочитайте тип array циклом - без ссылки на базу (без класса con ) Возможно ли ? Как я понимаю, java.sql.Arrays - это интерфейс, т.е. надо искать его реализацию если охота заполнить его самостоятельно. И у тебя код вертится внутри базы, судя по "jdbc:default:connection", тогда откуда желание ей не пользоваться? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2018, 08:27 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Denis PopovКак я понимаю, java.sql.Arrays - это интерфейс, т.е. надо искать его реализацию если охота заполнить его самостоятельно. И у тебя код вертится внутри базы, судя по "jdbc:default:connection", тогда откуда желание ей не пользоваться? Хотелось бы использовать этот код НЕ (!!!) только в базе. Хотелось бы использовать его более широко, - в базе в качестве статичного метода объекта - как обособленный объект На текущий момент реализовал два заполнения через параметрический ключ, который является "ссылкой на себя" (_this) Т.е. - если объект создан - пишу в поле = span_row если объект пуст - подразумеваю что вызов сделан из базы - заполняю через интерфейс Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Хотелось бы сделать более архитектурную и правильную реализацию Denis Popovискать его реализацию если охота заполнить его самостоятельно Насколько это сложно и трудоемко ? Можете помочь/подсказать ? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2018, 23:58 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
HOME_XНасколько это сложно и трудоемко ? Можете помочь/подсказать ? Да не думаю что трудно, особенно если не требуется реализовывать все методы интерфейса. К примеру: http://tech.valgog.com/2009/02/passing-arrays-to-postgresql-database.html ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2018, 08:19 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Лично мне задача топик стартера не ясна. Denis PopovКак я понимаю, java.sql.Arrays - это интерфейс, т.е. надо искать его реализацию если охота заполнить его самостоятельно. Тогда уж проще использовать СВОЙ тип (или стандартные коллекции). Зачем sql типы использовать без базы - не очень понятно. Разделить код который хочется "код НЕ (!!!) только в базе" и код интерфейся/обертки для вызова из БД И проблема чудесным образом решится сама, без всякого мазохизма и издевательств над sql.array. как организовать заполнение массива (типа java.sql.Array) - РУЦАМИ !!!!!!!!! java.sql - в данном случае, внутренние типы Oracle. Можно посмотреть как они выглядят в байтовом виде и работать с ними "руцами". Но это совершенно дикая идея. Кроме того, никто не гарантирует, что от версии к версии бинарный формат не изменится. Т.ч. идея не только дикая, но еще и попахивает диверсией - много проблем для тех, кому придется поддерживать этот код после Вас. Мало того, от завязки на Connection все равно не избавитесь. более архитектурную и правильную реализацию Отделить код бизнес-логики от интерфейсов/обертки для его вызова из "специфических" мест В бизнес-коде, пользоваться стандартными типами, соответственно Oracle/PostgreSQL/что-то другое специфик свести к минимуму кода. В принципе, можно код "оберток" даже автогенерировать и не париться. (например объектные типы Oracle можно мапить в java классы через JPublisher) IMHO & AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2018, 13:41 |
|
Передача Array в качестве параметра
|
|||
---|---|---|---|
#18+
Denis PopovК примеру: http://tech.valgog.com/2009/02/passing-arrays-to-postgresql-database.html Принято к изучению ! Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2018, 22:33 |
|
|
start [/forum/topic.php?fid=59&tid=2121613]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
others: | 330ms |
total: | 490ms |
0 / 0 |