Home
Все о Java
java@conference.jabber.ru
Воскресенье, 28 сентября 2014< ^ >
ne_formal установил(а) тему: Конференция для общения по тематике программирования исключительно на Java | Об этикете вопросозадавания: http://parallel.ru/cluster/smart-questions-ru.html | Документация и уроки Java http://download.oracle.com/javase/ | Библиотека примеров кода http://www.java2s.com | Хорошие книги: Брюс Эккель "Философия Java"; Кей Хорстманн, Гарри Корнелл "Java 2. Библиотека профессионала" | С JavaScript, J2ME - ищите другие конфы | Логи:  http://chatlogs.jabber.ru/java@conference.jabber.ru/ | Код бросать сюда http://paste.org.ru/ | J++ / J# / JS is not Java
Конфигурация комнаты
Участники комнаты

GMT+4
[00:04:09] Enykey вышел(а) из комнаты
[00:23:10] rexim вышел(а) из комнаты
[01:43:45] idkill нашел пример hibernate на maven, который еще и построился без ошибок. надо же. под конец дня хоть какой то результат )
[01:54:57] olgZZZ вышел(а) из комнаты
[02:16:50] hinst вышел(а) из комнаты
[02:30:33] POPSuL вышел(а) из комнаты
[02:31:33] POPSuL вошёл(а) в комнату
[03:36:55] idkill вышел(а) из комнаты
[03:50:51] drumond вышел(а) из комнаты
[04:04:37] idkill вошёл(а) в комнату
[04:15:26] idkill вышел(а) из комнаты
[05:29:10] nt4t вошёл(а) в комнату
[06:01:38] POPSuL вышел(а) из комнаты
[06:11:57] POPSuL вошёл(а) в комнату
[06:40:42] valor вышел(а) из комнаты
[07:26:09] madmercen вышел(а) из комнаты
[08:18:38] <ForNeVeR> idkill: что значит "entities не нужны"? Ты же в каких-то объектах хранишь данные, которые парсишь. Ну и перед выполнением, грубо говоря, insert'а в БД ты, вне зависимости от использованной технологии, должен же собирать все данные в какую-то кучу.
[08:19:09] <ForNeVeR> Вот чтобы эту кучу формализовать и вместо "insert into x values(?, ?, ?)" и используют Hibernate.
[08:19:45] <ForNeVeR> Я полагаю, что Hibernate можно использовать и не декларируя Entities, но только нахрена?
[08:41:28] rexim вошёл(а) в комнату
[08:58:07] ne_formal вышел(а) из комнаты
[09:03:27] Dema вошёл(а) в комнату
[09:04:12] K.J.Chernov вышел(а) из комнаты: offline
[09:05:35] K.J.Chernov вошёл(а) в комнату
[09:08:40] aman вошёл(а) в комнату
[09:14:45] Dema вышел(а) из комнаты
[09:35:32] EGD вошёл(а) в комнату
[09:44:19] Nirdosh_ вышел(а) из комнаты
[09:48:45] Nirdosh_ вошёл(а) в комнату
[09:59:52] Dema вошёл(а) в комнату
[11:17:03] madmercen вошёл(а) в комнату
[11:21:21] Akon32 вошёл(а) в комнату
[11:22:06] Dema вошёл(а) в комнату
[11:42:51] friedrich_zinger вошёл(а) в комнату
[11:47:26] Lubagov_H вошёл(а) в комнату
[12:10:48] aman вышел(а) из комнаты
[12:37:52] Dema вышел(а) из комнаты: Replaced by new connection
[12:37:58] Dema вошёл(а) в комнату
[12:47:35] Dema вышел(а) из комнаты
[12:48:17] olgZZZ вошёл(а) в комнату
[12:55:29] Dema вышел(а) из комнаты
[12:55:36] Dema вошёл(а) в комнату
[12:59:25] drumond вошёл(а) в комнату
[13:07:01] hinst вошёл(а) в комнату
[13:50:47] Dema вышел(а) из комнаты: Replaced by new connection
[13:50:52] Dema вошёл(а) в комнату
[13:59:17] ne_formal вошёл(а) в комнату
[13:59:39] ne_formal вышел(а) из комнаты
[13:59:53] ne_formal вошёл(а) в комнату
[14:33:58] idkill вошёл(а) в комнату
[14:47:45] Dema вошёл(а) в комнату
[15:38:07] <idkill> ForNeVeR, разобрал пример. да. там нету никакого даже sql. там задаешь объекту значения полей, и делаешь save - он в свою очередь сам генерит sql и пишет в бд
[15:39:15] <Akon32> причём иногда можно сменить тип БД просто в настройках сервера :)
[15:43:06] <EGD> причем больше он ни на что не годен
[15:49:49] Dema вышел(а) из комнаты: Replaced by new connection
[15:49:55] Dema вошёл(а) в комнату
[16:14:03] lumpa вошёл(а) в комнату
[16:14:48] <lumpa> Привет, есть тут знатоки ANTLR4? Хочу заказать язык. Тока парсер. За 50баксов)
[16:15:12] <lumpa> для опенсорс языка
[16:40:07] nt4t вышел(а) из комнаты
[16:40:24] nt4t вошёл(а) в комнату
[16:47:59] lumpa вышел(а) из комнаты
[16:48:51] lumpa вошёл(а) в комнату
[16:55:19] <idkill> EGD, это в плане hibernate?
[17:01:48] <EGD> да
[17:11:30] rafaelrs вышел(а) из комнаты
[17:27:09] <idkill> значит hibernate - гавно! если честно, уже начиная свои попытки в него въехать, я, будучи немного уставшим, свернул себе немного голову. и не с первого примера с github мне удалось его вживую прощупать. а тот пример на котором прощумал сделал мне вот такую БД :) http://i.imgur.com/JOPLJnc.png
[17:28:41] <idkill> на каждого юзера своя таблица. мне кажется что за такие вещи людей надо в зимбабве экстрадировать к каннибалам.
[17:29:11] <ForNeVeR> Как ты этого добился? О_о
[17:29:51] <idkill> никак ) скачал какую-то хрень запиленную в maven. он неожиданно для меня построился удачно. запустил эту фигатень. и понеслась.
[17:30:04] <ForNeVeR> Норкомант.
[17:30:12] <K.J.Chernov> если постгрес, то зачем заморачиваться с ORM?
[17:30:20] <K.J.Chernov> логику в БД и радуйся
[17:30:47] <idkill> между прочим эти примеры относятся к видео курсам java brans http://www.youtube.com/watch?v=Yv2xctJxE-w
[17:31:35] <idkill> K.J.Chernov: мне вот тоже пальцем тут у виска пару товарищей крутят, говорят мол, пиши ты аккуратный SQL да и всего-то
[17:31:59] <K.J.Chernov> ненене, я именно про то, что проще и правильнее (имхо) юзать логику в БД
[17:32:04] <K.J.Chernov> т.е. процедуры
[17:32:09] <K.J.Chernov> хранящиеся в БД
[17:32:26] <idkill> я с ними не сталкивался еще. но уже от всех слышу что они - сама awesomeness
[17:32:27] <K.J.Chernov> а общаться с базой уже примерно как "select user_login(username, password);"
[17:32:43] <K.J.Chernov> или "select add_user(username, password, ...);"
[17:33:03] <K.J.Chernov> ну это утрировано, конечно, но смысл понятен)
[17:33:12] <idkill> а вот к таким говноБД как oracle - не грешно ль будет применять хубернахьт (hibernate)?
[17:33:26] <K.J.Chernov> мм.. юзаем оракл на работе, логика в бд, норм
[17:34:59] <ForNeVeR> K.J.Chernov: логику в БД?
[17:35:04] <ForNeVeR> У нас тоже логика в БД.
[17:35:05] <K.J.Chernov> ну да
[17:35:14] <ForNeVeR> Говорят, того, кто это придумал, как-то раз жестоко отпиздили.
[17:35:16] <EGD> в hibernate то еще удовольствие вызывать хранимые процедуры
[17:35:18] <K.J.Chernov> хз
[17:35:19] <ForNeVeR> Больше он у нас не работает.
[17:35:29] <ForNeVeR> Логика в БД - ужасная идея.
[17:35:39] <K.J.Chernov> ну хз. спорный вопрос.
[17:36:03] Dema вышел(а) из комнаты: Replaced by new connection
[17:36:04] <ForNeVeR> Он становится спорным, только если инициатора так просто отпиздить не получается.
[17:36:09] Dema вошёл(а) в комнату
[17:36:11] <ForNeVeR> А во всех остальных случаях дело ясное.
[17:36:36] <K.J.Chernov> ForNeVeR, если не секрет, у нас - это где?
[17:36:43] <ForNeVeR> В Барнауле.
[17:36:51] <K.J.Chernov> всмысле название компании)
[17:36:54] <K.J.Chernov> я из Нск)
[17:36:56] <ForNeVeR> Мы делаем штуку для одного-крупного-банка.
[17:37:05] <ForNeVeR> Точнее я не буду говорить.
[17:37:06] <K.J.Chernov> а мы для сотни-другой крупных и не очень банков)
[17:37:25] <EGD> ах
[17:37:25] <ForNeVeR> Ну и вот, еле-еле вытравливаем эту логику из БД. Совершенно неюзабельная идея.
[17:37:48] <EGD> а Java у вас что делает?
[17:37:53] <ForNeVeR> Во-первых, рантайм СУБД намного глючнеее, нежели рантаймы используемых языков.
[17:38:17] <ForNeVeR> (да, была куча случаев, когда с апдейтом оракля вся логика в БД накрывалась половым органом)
[17:38:28] <ForNeVeR> Во-вторых, этим совершенно невозможно управлять.
[17:39:18] <ForNeVeR> Чуваки начинают писать апдейт-скрипты и переопределять процедуры, при мерже веток их тоже нужно как-то мержить и накатывать в рандомном порядке, всё плохо, всюду ад и погибель.
[17:39:19] <K.J.Chernov> ForNeVeR, мы, случайно, не в одной компании работаем?) давай намекни, сколько человек в компании?))
[17:39:28] <idkill> вот про апдейт тоже хотел спросить. потому что версия на версию не приходится. по мне так, бд лучше не апдейтить. а если новая версия - то портируем проект, тестим, и только тогда перезапускаем
[17:39:31] <ForNeVeR> K.J.Chernov: нет, не в одной.
[17:39:39] <ForNeVeR> У нас там вообще не жаба, а дотнет.
[17:39:58] <EGD> олололололололо
[17:40:05] <K.J.Chernov> ммм. ну ладно, убедил)
[17:40:09] <ForNeVeR> Но жаба тоже будет, наверное.
[17:40:20] <ForNeVeR> Хотя мы тут не про неё, а про логику в БД.
[17:40:33] <K.J.Chernov> ну да)
[17:40:38] <K.J.Chernov> ну я хз, нас устраивает, вроде
[17:40:43] <K.J.Chernov> хотя я не девелопер, я админ
[17:40:44] <K.J.Chernov> )
[17:40:45] <ForNeVeR> Управлять этой всей логикой очень неудобно, короче. Логика должна быть в коде, который подвержен версионному контролю.
[17:41:14] <ForNeVeR> Если б мне пришлось писать апдейт-скрипты для замены кода в бинарниках вместо того, чтобы писать код этих бинарников напрямую - я бы тоже бунтовал против такой системы.
[17:41:21] <EGD> PL/SQL нельзя подвергнуть версионному контролю?
[17:41:26] <K.J.Chernov> можно
[17:41:38] <ForNeVeR> Можно, но нужны нетривиальные процессы для этого.
[17:41:44] <EGD> лолчто?
[17:41:46] <ForNeVeR> Из которых постоянно кто-нибудь выбивается.
[17:42:14] <EGD> > Если б мне пришлось писать апдейт-скрипты для замены кода в бинарниках вместо того, чтобы писать код этих бинарников напрямую - я бы тоже бунтовал против такой системы.
это нужно только для DDL
[17:42:39] <ForNeVeR> Процедурки тоже так же пишутся, не?
[17:42:55] <ForNeVeR> Ну, можно и по-нормальному, возможно. Но это как раз к нетривиальным процессам.
[17:43:05] <EGD> create or replace ...
[17:43:10] <ForNeVeR> Отлично!
[17:43:24] <ForNeVeR> Два чувака, каждый в своей ветке, написали два апдейт-скрипта для процедуры.
[17:43:35] <ForNeVeR> Каждый её реплейснул. Один добавил строку, второй добавил.
[17:43:40] <K.J.Chernov> и чо это за бред?
[17:43:47] <K.J.Chernov> сфигали девелоперы ставят патчи на боевую систему?
[17:43:52] <EGD> Два чувака, каждый в своей ветке, написали два класса для пакета.
[17:43:54] <ForNeVeR> EGD: опиши, что делать с реплейсами.
[17:44:00] <K.J.Chernov> не, стоп-стоп-стоп
[17:44:04] <K.J.Chernov> девелоперы готовят патч
[17:44:06] <K.J.Chernov> выдают его админам
[17:44:07] <ForNeVeR> С классами для пакета сурсконтроль мне покажет сразу всё.
[17:44:09] <K.J.Chernov> админы ставят патч
[17:44:22] <EGD> ForNeVeR, и с процедурами покажет
[17:44:24] <ForNeVeR> Ну вот, начались какие-то пляски, короче.
[17:44:36] <EGD> да
[17:44:44] <EGD> писали бы на Ц
[17:44:50] <ForNeVeR> Один предлагает выкладывать из апдейт-скриптов звёздочки в репозитории, второй предлагает вообще какой-то BDSM с админами.
[17:44:52] <EGD> а то понапридумали
[17:45:08] <ForNeVeR> Третий (то есть я) предлагает послать всё нафиг и не писать логику в БД.
[17:45:20] <EGD> БД не нужно
[17:45:28] <ForNeVeR> Ну, кроме тех случаев, когда у такого подхода какие-то уберпреимущества в плане быстродействия, например
[17:45:35] <EGD> есть же Comporator-s
[17:45:38] <EGD> ы*
[17:45:50] Dema вышел(а) из комнаты: Replaced by new connection
[17:45:50] <ForNeVeR> Б-же, что он несёт?
[17:45:55] Dema вошёл(а) в комнату
[17:45:56] <ForNeVeR> Ловите наркомана!
[17:46:07] <EGD> ёбом токнуть?
[17:46:13] Dema вышел(а) из комнаты
[17:46:21] <ForNeVeR> А я пойду спать.
[17:46:28] idkill инициировал весь этот срач =))
[17:46:34] <K.J.Chernov> да не срач
[17:46:46] <K.J.Chernov> просто спор о тех или иных подходах к разработке)
[17:47:08] <EGD> пишите на Perl и будет вам счастье
[17:47:11] <K.J.Chernov> +1
[17:47:18] <idkill> не буду писать логику в БД
[17:47:19] <ForNeVeR> А, ну и ещё - эти процедуры очень гиморно дебажить.
[17:47:30] <K.J.Chernov> trace-ы
[17:47:35] Dema вошёл(а) в комнату
[17:47:38] <EGD> а ты пиши чтоб с первого раза все работало!
[17:47:49] <ForNeVeR> Я хочу дебажить код приложения, а не кучу скриптов, которые не цепляются к моему нативному дебаггеру, и постоянно генерят ошибки вида "oracle process has no purpose in life".
[17:48:22] <ForNeVeR> (реальный случай, между прочим - апдейтскрипт брал и генерил такой еггог)
[17:49:03] <ForNeVeR> Хотя я уж не помню, как и зачем они там стартовали сабпроцессы из апдейт-скрипта.
[17:49:40] <ForNeVeR> Через какой-нибудь shellexec, поди. Ужос-ужос.
[17:50:07] <Akon32> ШТО
[17:50:22] Akon32 отвлёкся от чата, а тут!
[17:50:52] <ForNeVeR> Akon32: они мне предлагали хранить логику в БД :(
[17:52:16] <EGD> так в БД по другому все работает
[17:52:24] <EGD> это тебе на ява какая
[17:52:33] <EGD> а ты к ней с ява подходом лезешь
[17:52:53] <idkill> :D
[17:53:01] ForNeVeR вошёл(а) в комнату
[17:53:42] <ne_formal> форневир - ябида!
[17:55:37] idkill прочитал на вики про некую надёжность в отношении stored procedures и всё на этом. про скорость тоже сказано... наверное имеется в виду какая-то особая система, в которой скорость критически важна (нежели чем ускорять всё подряд в стену)
[17:55:56] <idkill> https://ru.wikipedia.org/wiki/%D0%A5%D1%80%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%8F_%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D0%B4%D1%83%D1%80%D0%B0#.D0.9D.D0.B0.D0.B7.D0.BD.D0.B0.D1.87.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8_.D0.BF.D1.80.D0.B5.D0.B8.D0.BC.D1.83.D1.89.D0.B5.D1.81.D1.82.D0.B2.D0.B0_.D1.85.D1.80.D0.B0.D0.BD.D0.B8.D0.BC.D1.8B.D1.85_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D0.B4.D1.83.D1.80.5B3.5D
[17:56:31] <ForNeVeR> Ну, иногда некоторые вещи целесообразно делать процедурами и триггерами. Просто я считаю, что не все и не всегда.
[17:56:43] <idkill> да да
[17:57:03] Dema вышел(а) из комнаты
[17:57:20] <EGD> все и всегда, иначе неоссилятор
[17:57:48] <ForNeVeR> Расскажешь это моему томагавку.
[18:18:54] Dema вышел(а) из комнаты
[18:29:17] nt4t вышел(а) из комнаты
[18:38:43] madmercen вышел(а) из комнаты
[18:42:04] AkiraYamaoka вошёл(а) в комнату
[18:48:15] Vurtatoo вошёл(а) в комнату
[19:28:46] Dema вошёл(а) в комнату
[20:02:36] EGD вышел(а) из комнаты: Вышел из Vacuum-IM
[20:10:22] friedrich_zinger вышел(а) из комнаты
[20:46:36] Vurtatoo вышел(а) из комнаты
[21:10:09] EGD вошёл(а) в комнату
[21:37:20] madmercen вошёл(а) в комнату
[22:06:12] Gebb вышел(а) из комнаты
[22:18:44] lumpa вышел(а) из комнаты
[22:19:57] Gerc вышел(а) из комнаты
[22:20:28] Gerc вошёл(а) в комнату
[22:41:35] Gerc вышел(а) из комнаты
[22:42:23] Gerc вошёл(а) в комнату
[22:43:25] Gerc вышел(а) из комнаты
[22:44:04] Gerc вошёл(а) в комнату
[22:45:25] Gerc вышел(а) из комнаты
[22:46:00] Gerc вошёл(а) в комнату
[22:46:31] Gerc вышел(а) из комнаты
[22:47:01] Gerc вошёл(а) в комнату
[22:48:18] Gerc вышел(а) из комнаты
[22:48:50] Gerc вошёл(а) в комнату
[22:49:22] EGD вышел(а) из комнаты: Вышел из Vacuum-IM
[23:08:54] madmercen вышел(а) из комнаты
[23:11:20] Dema вышел(а) из комнаты
[23:25:09] Vurtatoo вошёл(а) в комнату
[23:25:37] rexim вышел(а) из комнаты
[23:46:32] Akon32 вышел(а) из комнаты
[23:49:24] Vurtatoo вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!