Прошлый >>1294482 (OP)Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?А: Нет, не поздно.Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.Q: Хули все книги на английском?A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.Q: Что скажете за джавараш?Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.https://github.com/qqqlll/Java-Thread/wiki
>>1299746Как там с многопоточностью в питоне?Think of Python as an old mainframe; many tasks share one CPU.https://opensource.com/article/17/4/grok-gil
>>1299754Пока вы дрочите на многопоточность, ИИ делают ТОЛЬКО в Питоне и срать они хотели на нюансы, если код красив, читаем, понятен и без костылей.
>>1299769У них весь скелет написан на низкоуровневых языках. Питон там в роли скриптового языка для описания модели. Что-то уровня lua в игровых движках.
>>1299774Ну там вроде основной API таки для Путхона. Что под капотом - не важно. Для Java тоже есть - но по остаточному принципу и костыльная.
Джаваны, а может ли один сервер сокет выступать в роли клиента для другого? Хочу замутить в приложении клиент - клиент релейшоншип
>>1299742 (OP)Наконец-то аниме девочка. Однако хотелось бы качество получше, да и может бы чуть няшнее что ле.
>>1299786> Джаваны, а может ли один сервер сокет выступать в роли клиента для другого?Что ты подразумеваешь под >один сокет<? Если буквально один socket, то тогда нужно будет использовать UDP, он запросто позволяет такую хуйню, гугли "UDP echo server java". Иначе только два раздельных сокета.
короче вчерашняя проблема из прошлого треда всё ещё актуальна.хочу считать строки из текстового файла, заменить на ходу некоторые символы буквы на какой-нибудь дефолтный, и схоронить всё это в список стрингов. как это делается через модные стримы?https://pastebin.com/MsTtYLc8
>>1299797>https://docs.oracle.com/javase/9/docs/api/java/io/FileInputStream.htmlда открыть и прочитать файл у меня получается, а вот натравить правильно map, чтобы заменить символы, нет.
>>1299802>https://docs.oracle.com/javase/9/docs/api/java/lang/String.htmlnew String(bytes).replace("abc", "def");
>>1299796Вот нахуй тебе стримы? Мне стримы помогла понять Clojure. Не получается - хуярь императивно как привык, зачастую получится не хуже, если правильно организовать.https://pastebin.com/ZkraSeb9
>>1299811>>1299812Arrays.stream(new String(bytes).split("\n")).map(s -> s.replace("abc", "def").collect(Collectors.toList());
>>1299818>https://pastebin.com/ZkraSeb9да ты бох! императивно я могу, решил сейчас навернуть то новое, что с пятой версии добавляли.
Джаваны, этот Spring какая-то лютая хуета. Я вообще не понимаю, помогите. Почему в других языках такой еболы нет? Как же тяжело после C перекатываться в эту срань.
>>1299832Какие в пизду языки? Спринг это фреймворк, готов посморить что в си ты байты ебал, а не круды шлепал, от того и разрыв шаблона. Ты бы мог адекватнее сравнить спринг поработав с каким-нибудь пхп/руби/питон фреймворком.
>>1299833Работал с Django, но такого пиздеца не было. Я вообще не понимаю философию. Нахуя делать простые вещи сложно?Миллионы мух, конечно, не могут ошибаться, но дочего же сложноа... :-(
>>1299834>Нахуя делать простые вещи сложно?Можешь привести пример простой вещи, которая делается в спринге сложно?
>>1299844Да вообще абсолютно всё. Читаю уроки и вообще охуеваю - прописывать в XML (это в 2018м!) классы, что за бред...
>>1299846ну если тебя смущает XML (в 2018!), открою секрет - можно и совсем без него (прочитай книжку чуть дальше (или что ты там там читаешь))
>>1299848Может и можно, но как-то непонятно ради чего это всё. Ради гипотетической масштабируемости в каком-то будущем настраивать, чтобы Spring жонглировал твоими классами?Я думал, что Spring - это фреймворк с кучей полезных библиотек. Типа Commons, только еще круче. А занимаюсь изучением какой-то хуйни.Вот например будет ли проще парсить сайты со Спринг?
>>1299834Java EE ещё больший пиздец. Когда тебе помимо самого приложения/окружения нужно ещё настраивать контейнер в котором оно работает, это просто пушка.>>1299846XML позволяет поменять используемые реализации классов без перекомпиляции, что иногда полезно. Есть более современная альтернатива с Annotation Config, но XML важен для понимания того как работает Spring.
>>1299850>Парсить сайты на жабеА ты знаешь толк. Скорее всего нет, т.к. он не для этого предназначен.
>>1299850>Может и можно, но как-то непонятно ради чего это всё. Инверсия управления, внедрение зависмостей, принцип, ебать его в сраку, единой ответсвенности. Слыхал про такое?>Я думал, что Spring - это фреймворк с кучей полезных библиотекТак и есть. в нем куча полезных библиотек
>>1299861>Инверсия управления, внедрение зависмостей, принцип, ебать его в сраку, единой ответсвенности.Вот мне интересно, как работают большие проекты под Django без всей этой хуйни?
А подскажите плез что читать, если смотрите короче, я такой работаю с джава-стеком 3 года, знаю немного про то, как устроена Jvm (ну то есть там как память работает, класс лоадер и прочая параша), писал на groovy год-два, но саму джаву не знаю? Хочу вкатиться в бегдату и прочую скалу, но для этого мне надо пройти тесты по джава кор, а я вот на ней написал только калькулятор в универе, и в душе не ебу как правильно запилить на спринге приложуху? Короче надо стронг скиллз по написанию этой самой лапши получить. Что делать?
>>1299896Просто я короче глянул на вашем гитхубе, там есть книжки для нубасов, там вообще будет с нуля и скучно; есть ещё какая-то эффектив-хуита, но я боюсь, что там тоже нужно уметь хотя бы программу составить нормально, а я не ебу че и как там писать, какие классы набрать
>>1299898Да мне поебать, в смысле спринг легкий и для макак, но без кора там делать нехуй если не траблшутить и мелкие фиксы туда запилить, чем я тоже занимался, но это для дебиловА есть что по делу ответить?
>>1299901Ну это же тоже такое, мне надо бы синтаксис нормально запомнить, чтобы сеньоры потом в твиттер не писали, что очередной долбоеб проебался в синтаксисе и у них тестовое задание запустилось только со второго раза
>>1299905ещё где-то есть практика писать синтактически корректную хуйню на листочке бумаги во время знакомства?
>>1299907Да, но читать это говно неинтересно и скучно, вообще эти книжки с нуля - для вкатывальщиков-долбоебов, которые не знают основ программирования. Не хочу, чтобы мне объясняли, что такое переменная и класспас, хочу пописать такого, чтобы поработать нормально со стандартными либами че там, потоки и прочее говно
>>1299910У шилдта описываются основные классы кора во второй части книги по-моему, еще хорстманна первый том можешь прочитать.
>>1299910накати что-нибудь про шаблоны проектировки, там довольно интересно и уже обращения с читателем не на уровне долбоёба идёт. помимо самих шаблонов можно ещё какую ява-хуню модную подсмотреть и подхватить.
>>1299922Значит оно там органично и настолько pythonic way (читай: умно сделано), что не вызывает лишнего мозгоебства.
>>1299933Питон - динамический язык без типизации.Java - компилируемый язык со статической типизацией.Разницу понимаешь?Твой питон вообще не годится для сколь нибудь больших программ просто из-за динамической типизации.А джанго - лютая ебанина, честно говоря.Про быстродействие я уже и не говорю.Спринг и прочие подобные вещи предназначены для того, чтобы упростить программирование больших программ на джаве.Не на питоне, понимаешь?Если ты привык колхозить по-быстрому на динамикопараше, то в джаве тебе может быть неуютно поначалу. Поэтому и говорят, что джава - простой язык, но, порог вхождения в реальное программирование на нём - весьма высок.
Пасаны, учу жаву, дали задание, но как это принципиально решать я хуй знает, не в плане жавы, а в плане математики, подскажите хотябы как эта ебань называется, чтобы принцип решения загуглить.
>>1300016Дружище, я понимаю, но решать нужно. Я понимаю, что учи я математику в 9-10 классе и проблем бы таких скорее всего не было, хотя за 14 лет я ее все равно забыл бы.
>>1299987Мань, твоя джава не нужна никому и скоро она умрёт, а вы, макаки энтерпрайзные, лишитесь работы и пойдёте параши чистить.
>>1300021> скоро она умрётСкорее чем С++ или нет? А то я запутался, какому из этих языков дольше пророчат смерть, а они назло всем всё живут и живут.
>>1299995В первом проходишь по отрезку 0 до 2, с шагом 0.20, 0.2, 0.4...И вычисляешь по формулеУ тебя там в начале знак суммы Е для х от 1 до 6?Это значит тебе надо for(int i = 0; i < 5; ++i) и в этом цикле прибавляешь 7 в степени а(0, 0.2, 0.4...), затем вычитаешь cos(x)Будет что-то вроде этого:double y = 0;for(double a = 0; a <= 2; a+=0.2) { double sum = 0; for(int i = 1; i <= 6; ++i) { sum += Math.pow(7, a) - cos(x); } y += (sum); }System.out.printf("%e", y);
>>1299995ArrayList<double> a = new ArrayList<>();double beta = 0;for(double x = -6; x <= 2; x+=0.5){ double tmp = x / 2;if(tmp > -2 && tmp <= -1) beta = Math.sin(xx);else if (tmp > -1 && tmp < 0.2) beta = Math.cos(xx);else if(x == 0.2) beta = Math.cos(xx) / Math.sin(xx);a.add(Math.log(Math.abs(beta + 2.74)));}
>>1299846Можно это делать и без XML, но ты все равно должен знать как пользоваться любым методом конфигурации (авто, джава, XML). Потому что на есть куча легаси, которая написана тогда, когда существовала только XML-конфигурация.
>>1300050>Язык - это инструмент.Да, именно.И бывают инструменты профессиональные - как джава, и для хоббистов - как питон.Всякое ML и прочие научные расчёты - это приравнивается к хоббистам (т.к. делают это не программисты, а специалисты в предметной области).И питон - хороший язык, просто не для любых задач.Как и джава.
Можо ли как то отобразить эксепшен пойманый, например где то в методе сервиса в спринге пользователю через тимлиф?
>>1300083>И питон - хороший язык, просто не для любых задач.Что можно сделать на жаве, чего нельзя реализовать на питоне?
>>1299742 (OP)На рест апи приходит ВЫСОКАЯ НАГРУЗКА. Посоветуйте статьи об оптимизации производительности в случае, когда клиент выгружает данные тридцатью самосвалами.
Здравствуй, джаватред.Смотри:https://dropmefiles.com/Q6KjqЕсть попытка сделать шифратор\дешифратор RSA, в учебных целях, разумеется, фактическая безопасность меня мало волнует. ЧЯДНТ? Можешь запустить версию с графическим интерфейсом, там вроде понятно, что и для чего. Но, короче, на этапе расшифровки возникает какая-то дичь с длиной блока javax.crypto.IllegalBlockSizeException: Data must not be longer than 128 bytesat team.isaz.rsa.Window.Go2ActionPerformed(Window.java:479)Наверное, я чего-то банального не понимаю, потому не вижу в чём косяк. Сам уже не могу. Если кому не в лом, не посмотрите?(
>>1300102На джаве можно писать очень большие программы.А потом - переписывать.На питоне это делать затруднительно.Потому, что инструментальная поддержка в джаве - охуенна.Лучше нет ни у какого другого языка.Также - быстродействие, многопоточность.В общем - промышленный стандарт.Ключевое слово - промышленный.С другой стороны - у питона охуенная интеграция с сишными либами, и целый ряд других достоинств. В том числе - удобное написание не очень больших программ, что, часто, затруднительно делать на джаве.
>>1300160> С другой стороны - у питона охуенная интеграция с сишными либами, и целый ряд других достоинств. Таки да. Жава с её философией "native нинужно, пишите всё на жаве" сильно соснула с приходом GPGPU и подобных технологий. Впрочем, пытаются это исправить: http://openjdk.java.net/projects/panama/
>>1300168>сильно соснула с приходом GPGPUДействительно охуенно соснула, учитывая, что джава так то вообще язык заточенный не под расчеты и вычисления и имеет совершенно иные задачи, где абстракция от железа - важный фактор
>>1299742 (OP)Делаю мапинг JSON в иерархию объектов. Есть поле типа класса, которое в JSON может быть null. Jackson в спринге валится при попытке маппировать это нулевое поле в объект. Как сделать, чтобы если вложенный джейсон равен null, то и ссылка на соответствующий объект была null?
>>1300183> язык заточенный не под расчеты и вычисления и имеет совершенно иные задачиЧто значит не заточенный? И с каких пор FFI имеет хоть какое-то отношения к рассчётам и вычислениям внутри языка если они именно и предназначены для того, чтобы эти рассчёты выносить в нативный код? Да и говоря про сам язык, те же value types помимо уменьшения нагрузки на GC ускорят и вычисления, возможно дальше добавят и поддержку упакованных типов для использования SIMD.
Почему пик 2 каждый раз берёт value по первому ключу, key при этом каждый раз разный, а arraylist каждый раз один и тот же, как фиксить?
>>1300499А чо ты не можешь понять то? У тебя есть коллекция с объектами теперь ты можешь делать с ней что угодно? Кстати, если тебе надо юзать в расчетах дату и время, то >tokens[DATA].trim()),Integer.parseInt(tokens[TIME]Вот тут ты наворотил хуйни, тебе надо юзать DateTimeAPI
>>1300514Мне надо создавать лист из листов, или через какие-то еба циклы проходить по всем листам? Я не понимаю, как обращаться к одному и тому же элементу во всех листах сразу, выдает кучу разных ошибок на все попытки
Где вообще нужна ваша ява? Игры, десктоп Проги - С++, Сайты - хтмл ксс жс пхп, ИИ - путон. Гдеееееееееееееееее???
>>13005291. Всякое унылое говно типа баз данных.2. Софт и игры под Android.3. Игры: на Java написан Minecraft. Ну и Project Zomboid.В целом, соглашусь, Java говно ебаное по сравнению с Питоном и даже C#.
>>1300522А зачем ты каждый объект запихиваешь в свой лист? У тебя 50 листов и в каждом по одному элементу? Ты совсем еблан?
Сап, аноны. Никто не натыкался на полную книгу High Performance Java Persistence Vlad Michalcea? Где не нахожу, она везде обрезана наполовину
>>1300547Не по одному. А по строке из 7 элементов. У меня есть 50 дней и у каждого дня свои 7 характеристик, каждый день - отдельный лист. И я не пойму, как теперь совершать расчеты между разными днями по этим характеристикам
>>1300549Ты дурак чтоль, блядь? Твой день - это класс типаpublic class Day {private Date DATE;private Time TIME; (сам разберешься как хранить дату и время)private Double OPEN;private Double HIGH;private Double LOW;private Double CLOSE;private Double VOL;геттеры/сеттеры}Ты парсишь каждую строку и сохраняешь ее данные в сущности выше. Все эти сущности ты заталкиваешь в коллекцию (в лист, например - ArrayList<Day>). Индекс в листе - это номер дня. Какой нахуй лист листов?
Как же я проигрываю с этих неосиляторов, что выше по треду. Всё таки прав я был в своём посте пару тредов назад. Действительно наша джабка настолько популярна и хороша, что каждый вайтивайти пытыется насрать в тред, но жидко пукоет и умирает. А теперь давайте разберём пост очередного неосилятора по частям. >>1300541>1. Всякое унылое говно типа баз данных.Этого говна добра написанно и поддерживается больше, чем обозримых песчинок на галактике Омара.Как сказал один анон наверху, это ПРОМЫШЛЕННЫЙ СТАНДАРТ, и уж я тебя заверю, что на твоём земиноблядском и крестовом вместе взятых написано меньше, чем на жабе.Можешь продолжать пытаться в свои НЕЙРОНОЧКИ с гречкой и хуйцами, пока любой джава-джун будет поднимать с 70к в месяц и это только в начале и без опыта. 2. Софт и игры под Android.Только вдумайся в эти слова. Андроид - ТОЛЬКО ЖАБА. А это огромный рынок, в который каждый жаба-джун может перекатится по желанию. >3. Игры: на Java написан Minecraft. Ну и Project Zomboid.Маинкампф говорит за себя, каждый о нём знаем.Про игры не особо знаю, однако, на том же libGDX есть много годноты, навскидку вспомню Don't Starve. А уж какие годные порноигрули есть на libGDX, ух я на них шишку отточил в своё время.>В целом, соглашусь, Java говно ебаное по сравнению с Питоном и даже C#.У вас лямбда по другому потоку вытекла в поинтер, выйдите из треда. Джава-Бояре ещё раз победили остальных блядков.
>>1299742 (OP)На рест приходит вложенные джейсоны одного и того же формата, которые нужно сравнивать друг с другом. Два джейсона считаются равными, если вложенные в них документы равны. Решено сравнивать их при помощи хэша. Как сделать это эффективно? Хэшировать результат toString() или конвертировать объектную иерархию, соответствующую джейсону, обратно в json и брать от него хэш?
котаны, помогите, весь день(на самом деле) ебусь с этим вашим спрингом.как только не пробовал - не получается запустить наипростейшую html.указывал в ComponentScan разные корневые каталоги, пробовал отправлять просто String, а не ModelAndView,пробовал менять расширение index'aпока безрезультатно (
3 года опыта работы, перестал получить кайф от программирования. даже вот модульность до сих пор не ковырял - леньесть идеи запилить пет проджекты на питоне, но тоже ленькак быть? сразу говорю, что программирование - это моё, я им горел, но на работе это превращается в скучную рутину, от которой тошнит
>>1300583попробуй убрать компонент сканесли зальёшь на гитхаб, то могу поковыряться, всё равно делать нечего
>>1300558>Можешь продолжать пытаться в свои НЕЙРОНОЧКИ с гречкой и хуйцами, пока любой джава-джун будет поднимать с 70к в месяц и это только в начале и без опыта. Так я и не спорил.Сижу на удалёнке в Испании за 80К на Java - это работа.Python - для души.
>>1300612блять какая-то хуйня, я усталв метод-то заходит, а ресурс найти не можетвключи логи logging.level.org.springframework.web: DEBUGувидишь, чтоMapped to ResourceHttpRequestHandler ["classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/", "/"]templates это я так понял для всяких jsp и прочее. и ModelAndView вроде не нужен тут, так как это статический ресурсесли поместить твой index.html в resources и возвращать строку "index.html", то всё заебисьне понял, почему со static/index.html не работаетхуй знает чё там происходит, дальше я устал :(вообще лучше возьми хеллоуворлды самого спринга из getting started и модифицируй их под себя, если чё-то не понятносо спрингом не работал
>>1300612>>1300633тебе надо ещё скомпилировать джарник, распаковать его и глянуть чё где лежит в итоге
>>1300633>>1300634спасибо за ответ, братан)>вообще лучше возьми хеллоуворлды самого спринга из getting started и модифицируй их под себя, если чё-то не понятнов следующий раз так попытаюсьпроебал весь день на пердолинг
>>1300648не воркает. да я даже если строку возвращаю - та же ошибка, так что думаю, что сам файл он находит, проблема в чем-то другом
>>1299776API у тебя может быть хоть веб запросами. Штука в том, что собственно вычисления там на сях, потому что Питон не справляется с производительностью. Так что самозаовн.
>>1300655тоже мимо. но я кароче создал очередной проект по очередному гайду от васяна, и этой проблемы у него вроде как нет. так что спасибо за помощь, дальше я сам пойду пердолиться :)
>>1300665spring.mvc.view.prefix=/classes/templates/spring.mvc.view.suffix=.htmlпоследний вариант, может так, у тебя web-inf нет
>>1300668и это не работает. а еще все таки новая сборка тоже не хочет работать с ModelAndView, но строку нормально выдает
сап котаны, столкнулся с проблемой Использую для своего приложения Hibernate в качестве ORM фреймворка, суть проблемы заключается в том, что foreign key мне возвращается в неправильном виде в таблице Orders (точнее не в том виде, в котором я ожидаю)Получается следующее:1) если закомментировать метод toString в классе Clients, то значение для ячеек подтягивается в виде адреса:com.example.entities.Orders@1234562) если метод toString раскомментирован, то в ячейку подтягиваются все поля из таблицы Clientsкак можно разрешить данный вопрос?
>>1300688>>1300694Короче говоря, сделай так, если я правильно понял, что тебе нужноhttps://pastebin.com/FEFXn8gr
>>1300694>>1300699я в геттер класса Order добавил clientID.getClientID() public Long getClientID() { return clientID.getClientID(); }спасибо тебе анон, вроде все просто, но долго не мог понять как решить проблему
>>1300583Если ещё не поздно. Ты хуйню сделал. Твой контроллер - не контроллер. Он зареган как контроллер, но, грубо говоря, не откликается ни на что. Пропиши в контроллере, ниже @Controller аннотации@RequestMapping("/")Это раз. Два - нахуя тебе компонентскан в меине? У тебя спрингбут. Ебани ему @EnableAutoConfiguration и он сам за тебя всё сделает.
>>1300737Немного проебался в посте и не так расписал один момент. Сделай просто:@ComponentScan@EnableAutoConfigurationНе прописывай поиск. Это раз. Посмотрел твой гитхаб >>1300612>https://github.com/KazankovMarch/test1 - правильно что поставил @SpringBootApplicationОстальное тогда ненужно. 2 - Что вот это такое?@RestControllerТы нахуя прикрутил рест, если не делал его? 3 - @RequestMapping("/kek")@GetMapping("/lol")???? Разберись как работают контроллеры. У тебя нет никакой form, чтобы та возвращала тебе твой кек и лол. Т.е вот этого <form name="f" th:action='@{/kek/lol}' method="get">У тебя пустой темплейт. Чтобы у тебя перешло на "домашний" или "начальный" темплейт, то просто сделай.@Controller@RequestMapping("/")public class IndexController { @GetMapping(""){ return "index"; }
>>1299742 (OP)Господа, есть MVC приложение, в нем есть возможность "авторизации" под разными ролями, а также имеется база, в которой есть эти же по смыслу роли с установленными привилегиями. Так вот, как грамотно заходить в базу под разными ролями, если логин-пароль я сконфигурячиваю для каждого DataSource отдельно? Создавать несколько DataSource с одним и тем же урлом и разными логинами-паролями или есть более грамотное решение? алсо, желательно не ковырять SpringSecurity так как смысл приложения как раз показать возможности базы, что там разные роли мол на то и на сё влияют и т.п.
Аноны, как правильно работать с сессией в JavaEE? Например, у меня есть несколько сервлетов, отвечающих за логин, вывод всех моделей, добавление и удаление. В сервлете логине получаю из формы имя, добавляю его в качестве атрибута. Если такая модель с именем есть в базе, то в атрибуты сессии добавляю остальные поля модели. Эти атрибуты будут доступны в других сервлетах? Чтобы получать к ним доступ, нужно в каждом сервлете вызывать HttpSessison session = req.getSession()?
https://github.com/Weydile/Web-Bank-Application Основная работа закончена, дальше планирую додрочить всякие мелочи и прикрутить какой-нибудь хуйбирнейт попутно изучив его, спринг там придрочить все дела, рейтаните пожалуйста, я не знаю в правильном ли направлении иду.>>1300558Иисус, рейтани плес.
>>1300790Нахуя? Типа на собесе мой гитхаб посмотрят и такие, ох нихуя у него там столько зелени, не будем смотреть что это за коммиты, главное что они есть?
>>1300755Я бы сделал с несколькими datasource, наверноеhttps://www.baeldung.com/spring-abstract-routing-data-source>>1300787HttpServletRequestt.getSession() либо создает новую сессию и добавляет JSESSIONID-куки в ответ, либо ассоциирует запрос с существующей сессией опять же по JSESSIONID в запросе. При логине можешь проверять БД и добавлять объект юзера в сессию (session.setAttribute("currentUser", user)). Чтобы проверить, залогинен ли пользователь, добавляешь фильтр, который будет проверять существование аттрибута (session.getAttribute("currentUser") != null).
>>1300802То есть атрибуты сессии можно задать в одном сервлете и получать в остальных, пердварительно вызвав getSession()?
>>1300788>Иисус, рейтани плесДля хелловорда по сервлетам неплохо. Только вот я не увидел никакой Советую как можно быстрее дрочить спринг и JPA>прикрутить какой-нибудь хуйбирнейт попутно изучив его, спринг там придрочить все делаТы даже не представляешь как тебе это всё облегчит. А если ещё и спрингбут будет, то можешь смело поделить кол-во своих классов и строчек кода на 2, потому что за тебя всё будет сделано. А сейчас ты пердолил велосипед и легаси.
>>1300856>Только вот я не увидел никакойМакака спиздил строчку. Только вот я не увидел никакой логин-пароль, всякой защиты и шифрования, валидации на правильность введённых данных и прочего.
>>1300787Разве твой сервер не обеспечивает тебе инфраструктуру безопасности - логин, аутентификатор, роли и т.п.?Если нет - это очень странно, или я просто привык к хорошему, лол.Может, ты чего-то не дочитал в документации?Тогда - делай через сессию, как тебе уже написали.Но, это не очень правильно, сервер должен это делать на своих внутренних механизмах, а сессия уже привязывается к логину.
>>1300878Никак, вообще-то.Смысл сессии именно в том, чтобы не быть привязанной к сервлету.Что ты хочешь сделать?
Пиздец этот ваш хуйбернейт жоский, гайдов ноль, в документации каша ебаная, пока осилил только пик 1 в пик 2 превратить.
опять выхожу на связьесли запускаю html двойным кликом - отображается нормально, со всем оформлением, css и т.д.если запускаю спринг приложение и перехожу в браузере на эту страницу в локалхост, то никаких ресурсов не подгружается. Есть у кого нибудь идеи как это фиксить?
>>1300737>>1300745Анон, почти нихуя не понял, но спасибо большое.поменял аннотации, обновил на гитхабе все равно не не работает, ну да и хуй с ним. я скачал из репозитория спринг гайдов проект и его редачу.>2 - Что вот это такое?>@RestControllerя просто уже дохуя менял аннотации, изначально ее не было, поставил "на всякий, вдруг заработает">???? Разберись как работают контроллеры><form name="f" th:action='@{/kek/lol}' method="get">ебать, ну в гайдах от васянов, которые я смотрел, вообще не видел подобного. Где можно почитать про это*? на русском?
>>1301469Ты ж не думаешь что это продакшен? Уже лет 8 как только в легасиговне. Норм JPA работает через метапрограммирование.
Двощ, дай плз ссылку на источник, где толково поясняется за дженерики и лямбда выражения. Заебался уже нихуя не понимать.
>>1301558Даже, стало, блять, интересно почему какое-то говно у тебя не запускается. Заклонил себе твой проект и посмотрел. А теперь следи за руками, если не хочешь, чтобы тебя побили. 1 - Ты нахуя просто .html создал? Просто .html хуйня не читается и потому тебе говно выдавало. Ты либо юзаешь Thymeleaf который очень похож на html и вообще приятный либо JSP, либо там ещё что-то но на остальное мне похуй.Ты должен был добавить вот такую хуйню:<groupId>org.springframework.boot</groupId<artifactId>spring-boot-starter-thymeleaf</artifactId>В pom.xml. А в самом index.html прописать <html xmlns:th="http://www.thymeleaf.org" xmlns="http://www.w3.org/1999/html" lang ="en">2 - У тебя в applications.properties хуйни лишней много. spring.datasource.url=jdbc:postgresql://localhost:5432/moscowspring.datasource.username=postgresspring.datasource.password=rootspring.datasource.initialization-mode=alwaysspring.jpa.hibernate.ddl-auto=noneЭтого хватает. spring.datasource.initialization-mode=alwaysА это ещё и важно, если не хочешь с h2 ебаться и сразу на бд делать. Сохраню тебе пару часов жизни, а то потом бы пришел и спрашивал ПОЧЕМУ СПРИНГ POSTGRES СХЕМУ НЕ ВИДИТ АЛО!13 - @GetMapping() Убери "", я их случайно оставил. Оно будет работать и так, но лучше без них.Вот, пикрил твой пустой index.>ебать, ну в гайдах от васянов, которые я смотрел, вообще не видел подобного.Потому что формы - это Thymeleaf.>Где можно почитать про это*? на русском?Spring in Action 4. Я бы сказал, что четвёрка даже лучше 5. Книженция и на русике есть нахуя погромистить без ангельского??7, начинает с важных основ спринга и потом делает веб хуйню, с которой таки можно устроиться джунуом. Небольшой хинт. Если будешь читать как он делает логин-пароль веб хуйню, пролистай сразу главы о Spring Boot. Вкратце - Spring Boot позволяет не писать всякую конфигурацию разной хуйни, он сам будет делать её. Но тебе стоило бы ознакомиться хоть краем глаза.
Пиздец ваш хиберхуй медленый у меня на jdbc милисекунды на запрос нахуй уходили, а теперь страница 5 секунд грузится пиздец лол чё за нахуй?!
>>1301713У меня там блять хеллоу ворлд ебаный, какого хуя вообще, я с нихуя должен уметь оптимизировать эту хуйню?
Джаваны, не пойму. В Мавене pom.xml русским языком написано пикрелейтед, а вылазит ворнинг билда:Warning:java: source value 1.5 is obsolete and will be removed in a future releaseWarning:java: target value 1.5 is obsolete and will be removed in a future releaseWarning:java: To suppress warnings about obsolete options, use -Xlint:-options.
>>1301839В пизду вашу жабу, говорили же мне, что она конченная, но не предполагал что настолько. Сука, в ТРЕХ местах описал версию, а всё равно эта хуйня.Главное, что всё работало, пока не подключил Мавен, который УПРОЩАЕТ, ага. Эталонные хуесосы 80 уровня.
>>1301864>Где именно? Еще какой-то xml? Вот как у него >>1301865 в pom.xml. Только 1.8 вместо 7 в твоем случае>>1301865Ну как бы по мавеновской документации твой и его вариант аналогичны. Непонятно только почему у него нихуя не работает
>>1301867>Ну как бы по мавеновской документации твой и его вариант аналогичны. Непонятно только почему у него нихуя не работаетПроблема может быть даже не в жабе так-то, хуй его знает.
>>1301867>>1301868>>1301869Ну охуеть можно, теперь заработало. Добавил в pom.xml эту простыню в <build>. Охуеть, просто охуеть. Убрал - перестало работать.Просто пиздец, ненавижу.
>>1301876>Что не так?Что тебе достаточно вбить вгуголь "Maven in 5 min" где тебе офф гайд дадут как сделоть новый проект и дальше про мавен можно забыть.
>>1301876>Нахуй иди.Окей, минус один господин что поможет тебе с чем-то в этом итт.>>1301876>Я по урокам изучаю, начал с нового проекта. Что не так?Ты не способен в гугл? Наверное это. Ты ахуеешь когда начнёшь изучать что-то посложнее типа спринга. Не поверишь, но в 90% гайдов понаписана хуйня да даже в доках написана непонятная хуйня и тебе нужно будет блять ебаться с каждой строчкой кода и ахуевать почему не работает задрачивая ебаный гугл.
>>1301879>>1301880https://maven.apache.org/guides/getting-started/maven-in-five-minutes.htmlТам нет НИ СЛОВА, что еще какой-то <build> нужно описывать. Как и в туториалах. Узнал об этом на дваче, вообще охуеть.Вся жава - сплошное говноедство. От синтаксиса, до философии. После Питоновского pip хочется обоссать Maven.
Когда всегда билдил по гайду и работало как на 1.6, как на 1.8, так и на 1.9 и ошибок не возникало. Как приятно осознавать, что есть кто-то криворукее тебя, кто даже по гайду не может сделать всё, а самому думать ему СЛОЖНО.
>>1301871Чувак, а у тебя возможно не работало потому что там очепятка. https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.htmlСам найдешь или подсказать?
>>1301887Чтобы запустить сраный хеллоуворлд нужно изучать криворукий велосипед под названием Мавен.>>1301891>https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.htmlОпа! И правда! Спасибо, анончик, теперь работает.И никаких предупреждений, ничего.
>>1301892Очень печально, что ты не понимаешь зачем нужен Maven. Посмотрел бы я, как ты проекты с хотя бы двумя десятками зависимостей бы собирал без него
>>1301895Он и спринг не сможет запустить. Хотя я тоже не мог и бугуртил, пока не узнал про мавен, лул.
>>1301896Могу. У меня бугурт, почему говноМавен, равно как и IDE не выдал предупреждения или ошибки на параметры.
>>1301900Схуяль он тебя должен предупреждать, если это не ошибка? То что ты сделал - определил новую константу, откуда мавену знать, что ты обосрался, а не намеренно сделал это?Попробуй gradle, он вроде попроще, но без мавена ты войти не вайдешь
>>1301902>Схуяль он тебя должен предупреждать, если это не ошибка? То что ты сделал - определил новую константу, откуда мавену знать, что ты обосрался, а не намеренно сделал это?XML@2018
>>1299742 (OP)На РЕСТ апи в 30 потоков выгружаются данные. АПИ тормозит. Как повысить производительность, если локально один запрос выполняется за 15 мс?
>>1299742 (OP)Обычно джависты отображают json в иерархию объктов. Как в таком случае вычислить хэш от вложенного json после выполнения маппинга? Хэшировать значение, которое возвращает toString() вложенного объекта?
>>1302044а просто hashCode в том классе не завезли? Не знаю насколько это хуёво, но можешь сам написать этот метод для него
>>1302049>а просто hashCode в том классе не завезли?hashCode возвращает число, а мне нужен хэш SHA256.
>>1302056> Удачи расписывать лайфтайм на каждый чихНачиная с 2018 варианта (впрочем в версии 1.31 они бекпортировали и в 2015 вариант) лайфтаймы нужны будут только в очень редких случаях. Они даже из стандартной библиотеки после этого изменения удалили 87% всех лайфтаймов, лол. https://github.com/rust-lang/rust/issues/15872
Поясните за чтение и запись из файлов в джаве. Столько классов и возможностей - глаза разбегаются. Какие посоветуете изучить и использовать?
>>1301909>тормозитВ каком месте?>Как повысить производительностьНайти место, где тормозит, и оптимизировать его.
>>1302170Java очень проста. А вот Spring и т.п. поебота - это костыли для поциентов с альтернативно-одаренным мышлением.
Ананасики, подскажите. Честно прошел и понял туториалы по Spring этого господина:https://www.youtube.com/watch?v=rWNy-PPp9Xo&list=PLm3OIf9VOVYvZ9B4mx5o-MZlAdk_KXEsq&index=10Теперь хочу написать веб-приложение, например чтобы воровало случайные статьи или картинки с Википедии, ну или парсер какой-нибудь. Куда копать? Нужна практика по Спрингу. Из скиллов только ванильная Java + вот эти вышеупомянутые туториалы.
Ментор задал вопрос: почему в servlet api 3.0 и старше, доступ к сессии не нужно синхронизировать? В гугле ничего не нашел. Подскажите, какой класс отвечает за создание объекта сессии? Я думаю, что там используется concurrentHashMap для хранения атрибутов, поэтому доступ и запись потокобезопасны. Подскажите, пожалуйста.
>>1302326В спеке 2.5 и 3.0 пункт 7.7.1 одинаков: " The container must ensure that manipulation of internal data structures representing the session attributes is performed in a thread safe manner. The Developer has the responsibility for thread safe access to the attribute objects themselves." Спек: https://download.oracle.com/otn-pub/jcp/servlet-3.0-fr-eval-oth-JSpec/servlet-3_0-final-spec.pdf?AuthParam=1543389910_f31d276a4e69c94faed5e151e25108b7. Тут написано что этот пункт значит: https://stackoverflow.com/questions/616601/is-httpsession-thread-safe-are-set-get-attribute-thread-safe-operations. Можно сделать вывод, что ничего в плане синхронизации сессии не изменилось.
Репост из реквест треда, так как там мало кто сидит. Кароче анон, хотел бы написать какой нибудь проект для закрепления материалов по вебтехнологиями НООООООООООООООООООО,но внезапно оказалось что прежде чем писать код, даже самого простого проекта, его бы для начала нужно как то формально спроектикровать.Иначе ты садишься и нихуя не знаешь с чего начать. Веб морды рисовать, или бекенд писать.Вообщем, есть ли хороший материал по базовому проектированию проекта, что бы типа повернул башку на стену как у тианочки на картинке, и понял что делать дальше. Спасибо.
>>1302391Моё имхо:1) делаешь базовый круд2) добавляешь %хуйня_нейм%3) рефакторинг + тесты4) ГГо то 2%хуйня_нейм% максимально простая, и её если нужно уже продумываешь на бумажке ручкой
>>1302391Сначала просто подумай что твоя веб-хуйня должна делать и что она вообще такое. К примеру. Сайт с картинками дилдаков, которые можно сохранить. ибо магазин будет тебе сложно писать. Ога, думоем, что нужно?1 - Личный кабинет для юзеров, откуда сидим и чекаем, попутно сохраняя самые красивые дилдаки. 2 - Темплейты и веб морды, где будут показываться дилдаки. 3 - %фича_нейм% которую тоже было бы нужно добавить. Потом ты такой садишься и начинаешь думать с чего начать. Нужно чтобы была домашнаяя страница? Сделал и прописал ей мапинг. Нужно чтобы этот мапинг обрабатывал контролер. Сделал контроллер.Домашняя страница готова.Нужно чтобы можно было зарегаться?Делаем юзер класс. Делаем темплейт для регистрации, делаем контроллер для этого.И так далее, смекаешь? Думаешь как сделать %фича_нейм%, думаешь что для этой %фичи_нейм% нужно, выполняешь. А потом просыпаешься на лекции с криками АРЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯ!!!!!111 МАВЕН СЛОЖНО И НЕРАБОТАЕТРИИИИИИИИ! ВЕРНИТЕ ПИТОН
>>1302326>доступ к сессии >синхронизироватьВпервые слышу такую хуйню вообще.Контейнер тогда зачем, если программист такой хуйнёй должен заморачиваться?Сейчас посмотрел исходники Resin 4 - SessionImpl - там используется TreeMap, доступ снаружи синхронизирован (блоки synchronized внутри методов).Можно, в принципе, скачать и посмотреть исходники Resin 3, но, предполагаю, что там будет то же самое.
Нужно получать динамически гетер и производить дальше танцы с бубном.Есть два варианта.Первый - switch и к нему 30 case. Второй - рефлексией получать гетер. Это всё обёрнуто в forEach, который 30 раз пробегается, после чего идёт if, в котором .equals я сравниваю два стринга. При совпадении мне нужно или кейс выбрать или рефлексией обработать. И это всё ещё обёрнуто в for обычный, который 12 раз пробегается. Что по производительности? Рефлексия или кейсы лучше?
>>1302469Хочешь сказать, что хуйня, раз столько пробегов? Я просто не вдавался в детали, это говно потом ещё нужно по определённым отчётам расфасовать и в пдф выдавать.
>>1302475Синьёр-помидор сказал что кейсы лучше рефлексии, хоть это и хардкод, но будет куда быстрее чем каждый раз рефлексировать. Так ли это?>>1302480>MethodHandlesПасиба, ща посмотрю что это.
>>1302487>Синьёр-помидор сказалА я, по-твоему, кто, лол?На самом деле - it depends.Хуй знает, что вы там делаете, на самом деле.Но, я бы сделал рефлексию и кеш методов (просто HasMap, например). Но, ещё раз - это зависит от многих обстоятельств.Примерно так внутри работает Apache BeanUtils/PropertyUtils. Там ты можешь получать свойства объектов по имени метода. Возможно, вам стоит его использовать.И да - это легко проверить. Сделайте простой тест - так и так, и 100000 прогонов. Результат может быть немного не таким, как вы ожидаете.
>>1302497>А я, по-твоему, кто, лол?Олд?Мне-то откуда знать лул. >Возможно, вам стоит его использовать.Буду разбираться. >Сделайте простой тест - так и так, и 100000 прогонов.Да, я уже сказал своим и буду ща как раз этим заниматься. Пасибо.
Анноны кто знает как такую дрянь реализовать?тали тз нужно валидировать разные комбинации условий для LocalDate fromDate и LocalDate toDate.например.1) fromDate никогда не может быть позже toDate2) для сущности Discount нельзя указать fromDate в прошлом.3) а для сущности Contract можно.4) в некоторых случаях fromDate и toDate могут быть одной и той же дато, что означает что период == 1 день, в других случаях toDate должен быть как минимум fromDate + 1dayЗадача создать единый метод, валидация которого покрывает все перечисленные условия. Валидация должна выглядеть примерно так:validateFromToDates(canBePast(fromDate),inclusive(canBePast(toDate)); - обе даты могут быть в прошлом, в том числе быть одной и той же датой. Пример - поиск сущностей по дате. Можно искать в прошлом, в том числе по 1 дню.validateFromToDates(mustBeFuture(fromDate),exclusive(mustBeFuture(toDate));- обе даты должны быть в будующем, НЕ могут обозначать один и тот же день. Пример - создание скидки. Нельзя создать скидку, применимую в прошлом и ее срок действия не может быть с сегодня до сегодня.validateFromToDates(canBePast(fromDate),inclusive(mustBeFuture(toDate)); - fromDate может быть в прошлом, toDate должен быть в будующем, в том числе до указанной даты включительно. Пример - контракт подписан давно, но внесен в систему только сейчас и действует до указанной даты включительно.
>>1302509Уточню - я имел в виду кешировать найденные через рефлексию методы. Поиск метода - (относительно) медленный, вызов уже найденного - быстрый.Я проверял, но давно, точных цифр не помню.
>>1302517Вот прямо так и реализовать, лол.С условиями и т.п.Если надо красиво - сделай валидатор, реализующий придуманный тобой internal DSL, с возможностью соединять методы в цепочку.Типа:dateValidator.when(dateFrom).notSameAs(dateTo).and().isInFuture();илиdateValidator.when(dateFrom).ne(dateTo).and().lte(someDate);ne = Not Equallte = Less Than or Equal И т.п.Но, это не так просто.И можешь поискать готовые.
Есть один еот стринг. "[0,0,0,0,0,0]"Мне нужно вытащить эти вот циферки из него и обкашлять добавлять в лист. Есть for (i=0; i<6; i++)Эти циферки могут придти любые, к примеру: [0,0,0,99999,0,0] и в любой другой вариации. Как мне это сделать?
>>1302593jshell> String[] str = "[0,0,0,0,0,0]".substring(1, 11).split(",");str ==> String[5] { "0", "0", "0", "0", "0" }дальше сам довай
>>1302593jshell> String st = "[0,0,0,9999,0,0]";st ==> "[0,0,0,9999,0,0]"jshell> String[] str = st.substring(1, st.length()-1).split(",");str ==> String[6] { "0", "0", "0", "9999", "0", "0" }jshell> for(String s : str) ...> System.out.println(Integer.parseInt(s));000999900Короче вот. Вместо печати добавляешь в лист.
>>1299746Не компилируемый, медленный, нет многопоточности, кастрированные анонимные функции. Не, для макак всевозможных, которые пишут парашу для веба, пойдет, а для уважающего себя человека, тем более называющего себя программистом–зашквар
Столкнулся с такой странной проблемой.Есть контролер. У контролера несколько форм с пост запросом.Страница одна. Поэтому пост маппинг идет типо /xui-odin , xui-dva и т д.Есть гет запрос, который эти формы заполняет до того как отобразить страницу. Идет model.addAttribute("xui" new xui(xyz.getX,.. ). модель атрибут каждый свой для каждой формы.В постмаппинге уканазана это "xui". При запуске приложения все достается заполняется, форма предзаполняется и все работает и норм.При попытке потестить это говно . Модельатрибут - нуль. То есть в тесте в псот запросе модель не подцепляется(?) спрингом. Ее просто нет.Если не поменять гетмаппинг на xui-odin например, то для формы с таким же пстмапингом тест заработает и модель появиться.Тест примерно такой:this.mvc.perform(MockMvcRequestBuilders.post("/xui") .accept(MediaType.TEXT_HTML) .param("xui", "test") ну и далее по тексту.
>>1299742 (OP)Мы сохраняем данные в клевой БД RethinkDB. Проблема возникла с извлечением числовых значений типа Double. Числовые поля могут иметь значения как с дробной частью, так и без нее (пример: 17, 17.0, 17.7). Внутренний формат представления чисел в RethinkDB - 64-битный double. Однако java-драйвер извлекает числа без дробной части как Long, а число с дробной частью как Double. При этом в классах предметной области жестко прописаны типа полей double. Когда драйвер возвращает Long вместо Double, возникает исключение ClassCastException. Как решить эту проблему? Для инициализации каждого поля модели использовать instanceof или написать функцию конвертации?
>>1302927Кроме этого, значение таких числовых полей в БД могут быть null. Как обработать эту ситуацию?
>>1302927Двачую за инстансоф. Пусть сеньоры-помидоры расскажут, плохо ли такое решение и как сделать лучше.
>>1299742 (OP)Как настроить реконнент к RethinkDB на спринг буте в случае обрыва соединения, если бд упала?
>>1299742 (OP)Сап жава-бояре, посоветуйте годных материалов/мануалов/готовых проектов Spring MVC + thymeleaf.
Спринг Такая история. есть два разных энтити со строковым полем area: здание - округ, анализ воды - округ. В округе много зданий и много проведенных анализов. Я так понимаю, это отношение многие ко многим. Как мне спрингом добавить в энтити здания поле со списком всех анализов, которые проведены в том же округе, что и это здание? Тут как-то нужно хитровыебанно использовать @ManyToMany? Тыкните куда читать, пожалуйста
>>1302661Где сеньоры-помидоры? Никто не знает почему модель.атрибут в тестах нуль если урл поста и гета отличаются?
>>1303273Давай по подробней. Не совсем ясно как организованны таблицы в БД.@ManyToMany это когда например есть какая то ОДНА сущность А которая может имеет связь с многими сущностями Б. И наоборот ОДНА сущность может иметь свзяь с многими А. Ключевое слово здесь связь.Я пока не понимат что с чем ты хочешь связать.
Милые ананасы. Я пишу (говнокод) на Жаве 4 года, чисто бэкенд, БД, вот это всё... Возникла идея для игры, чтобы не ебать мозги с изучением OpenGL и т.п. хотел взять готовый движок и что же?Нет ни одного движка для Java-господ. :-( По поводу Unity. Unreal - в пролете. Гугление только подтвердило догадки.Всё действительно настолько плохо и нужно вкатываться в C# или есть еще шансы? Игра планируется неспешная полуэкономическая стратегия типа prison architect, dungeon keeper и т.п.
>>1303304>>1303273house(adress: text,area: text //в одном округе много домов)waterTest(type:text,result:text,area:text //в одном округе много анализов воды разных типов)я решил сделать отдельную таблицу-словарьarea(name:textid SERIAL)и в двух предыдущих таблицах заменить колонки area на area_id. Так же будет проще соединить это все спрингом?(мне нужно чтобы в энтити house был список анализов, актуальный для округа, в котором дом расположен)
>>1303320Таблица округ и таблица дома это связь один ко многим. То есть @OneToMany. В энтити округа будет сэт с домами. Гугли как это делать. Таблицы дома и тесты это многие ко многим. Промежуточную таблицу сгенерит спринг. Ну и дальше уже просто запросами в репозитории делать.
>>1303327получилось через новую таблицу заебашить, спасибо. ну то есть я сделал дом --ManyToOne-->> округ --OneToMany-->> анализс ManyToMany не разобрался. В общем случае стоит делать связующю таблицу, или использовать ManyToMany, чтобы спринг сам такую таблицу генерировал? мне чото кажется, что второй вариант более ресурсозатратный
>>1303337Никакого маня-ту-маня у тебя здесь нет - он тебя ввел в заблуждение - только два many-to-one.
>>1299742 (OP)Если на рест-сервис должны приходить данные в зашифрованном виде, чтобы документы не были в открытом доступе, как это можно сделать на спринге? Есть примеры?
csv файл a b c 1 322 228.2 (эта строка это 1 день) 2 333 228.3 (эта строка это 2 день) 3 111 322.5 (эта строка это 3 день) Сначала создаю класс день, private int a, private int b, private double c, сеттеры, геттеры, конструктор и переопределяю тустринг В мейне Private static final aa, bb, cc String line = ""; while ((line = fileReader.readLine()) != null) { String[] tokens = line.split(COMMA_DELIMITER); if (tokens.length > 0) { Day someday = new Day(Integer.parseInt(tokens[aa].trim()), Integer.parseInt(tokens[bb].trim() ), Double.parseDouble(tokens[cc].trim()) list.add(someday);}} for (Object someday : list) { System.out.println(someday.toString());} Я могу вывести файл в консоль вот так a b c 1 322 228.2 2 333 228.3 3 111 322.5 Я могу вывести каждый день пот отдельности. Получается, 1 день – 1 объект в листе и так до конца. ( каждый день состоит из 3 переменных) Но как блять мне вывести на экран только значение b всех дней, какого-либо дня ? Как мне сравнивать значение с первого и третьего или первого и второго дня?
Джаваны, а что, в Java вообще никак нельзя взять последний элемент массива без его индекса? В Питоне можно array[-1] Если -1, то последний элемент, -2 предпоследний и так далее. заебало писать array.lenght К тому же не всегда это возможно Пример: System.out.println( TestClass.getClass().toString().split("\\.")[-1] ); Как мне написать имя класса после последней точки без ввода отдельной переменной для масива? Стримы это ебанько для таких задач. Равно как и конструкции типа:new ArrayDeque<>( Arrays.asList(TestClass.getClass().toString().split("\\."))).getLast()
>>1303599Помогите, пожалуйста.Как выводить на экран объект объекта листа ? Да да, вам не послышалось, или тут вообще не нужны листы ебучие
>>1303604Ладно, так и сделаю, когда пожру. Признаю свою вину(я ещё зелёный). Но мб пока кто-то успеет ответить, мне кажется, на этот вопрос можно и без кода ответить
>>1303605Нахуй ты ту стринг переопределяешь если тебе нужно выводить только определённые поля?System.out.println("Pidor " + someday.getB());
>>1303599Ты когда парсишь свой файл, добавляешь каждый день в List<Day>, вот где у тебя list.add(someday). Потом for (Day someday : list) { someday.getB(); }В чем проблема-то?
>>1303601????int i = array[array.lenght - 2] ; Вот тебе и последний элемент массива. Не забываем что начинается с 0В чём твоя проблема?
>>1303436Что пробовали: Просто юнит тест без контекста со стэндэлон стетапом.@SpringBootTest - c WebApplicationContextТесты c WebAppContext + WebMvcTest c ContexConfiguration... MockMvcBuilders.webAppContextSetup(wac).apply(springSecurity()).build();В контроллере ;Маппинги @GetMapping(/"xui")public String xui(Model model){.. model.addAttribute("xuiForm1", xuiForm1) model.addAttribute("xuiForm2", xuiForm2)....return "xui"} У пост мапинга нет вью только экшон в форме в тимлифе.@PostMapping(/"xui-action1")public String xuiFromOne( @Valid @ModelAttribute("xuiForm") XuiForm xmf ,....){..Действия с формой}Пост маппингов несколько - несколько форм на страницу.Запросы к форме находятся за спирг-секьюрити. Используется @WithMockUser и тут все ок.Тест типо mvc.perform(get("/xui")) .andExpect(model().attribute("xuiModel",any(XuiForm.class))) // Даже заполненая форма проходит тесты то есть все ок....... .andDo(print()); проходит.То есть в гет запросе модель.атрибут присутствует.Тесты к посту dblf mvc.perform(post("/user/user-profile-uf") .accept(MediaType.TEXT_HTML) .param("paramName","abracdabra")..... .andDo(print()); )ВыдаютModelAndView: View name = null View = null Model = null Content type = null Body = Forwarded URL = /403 Redirected URL = nullЧто странно ибо все работает. Все сохраняет и т д если запустить спринг и потыкать из брауезра. Все поля которые нужно сохраняет в БД. Валидация полей работает. Все ок вообщем.Гугл говорит что @ModelAtribut вообще невозможно протестить. И не надо. А как тогда блять.https://stackoverflow.com/questions/19160391/how-to-test-modelattribute-parameter-by-mockmvc
>>1303626Спасибо большое, я это вроде понял, а если я хочу вывести getB с 3 по 8 день, что делать? Перепробовал все циклы со всем, что может быть, вообще не подходит.
>>1303719List<Day> list = new ArrayList<>();//...парсишь csv...list.add(someday);for (int i = 3; i <= 8; i++) { int b = list.get(i).getB(); }
>>1303725>>1303757Вы ебанутые? Нахера вам счетчик? Пихай свой лист в for each и внутри него проверяй день, чтоб был с 3 по 8.
>>1303757оформляй свой код вместе с файлом и кидай сюда, потому что иначе понять тяжело что ты там наговнокодил>>1303771архитектор пожаловал, все по галерам
>>1303818Я не понимаю зачем? Ты что, так часто это делаешь? А если да, то почему не обобщить решение? Делай метод который возвращает последний элемент массива. Какие проблемы? Принципиально никак. Java не питон.
>>1303845Больные ублюдки.Я тоже изъебнусь щас:new ArrayDeque<>(Arrays.asList(array)).getLast() Интересно, Котлин такое же говно?
Милые ананасы, совсем сломал себе моск. В чем может быть причина, что эта хрень в Spring MVC не хочет отдавать страницы по указанному шаблону-адресу, но отдает Index.jsp из корня? Здесь же с кодом всё в порядке?
>>1303886>new ArrayDeque<>(Arrays.asList(array)).getLast() Кстати, всегда удивлялся говноедству компилятора Java - он жрет любое говно. Эта запись лишена смысла, имеет смысл лишь что-то такое:(new ArrayDeque<>(Arrays.asList(array))).getLast()
Петян, вкатываюсь+перекатываюсь, может быть смысл enum не понимаю. Допустим есть такое перечисление:enum direction{ UP, RIGHT, DOWN, LEFT;}Так вот, я бы хотел прилипить прямо в это ебучие перечисление ещё методы "поворотов", но не знаю правильно ли я понимаю всю суть. У меня проблемы с сигнатурой метода и "созданием нового элемента". Короче смотри, я натыкал знаков вопроса в непонятных мне местах:direction? rotateClockwise(){ ? = (this.ordinal() + 1) % this.values().length; return direction(??)}всё это для того, чтоб можно былоб сделать так:direction.UP.rotateClockwise() давало мне direction.RIGHT
>>1303891Нет, твой RequestMapping должен быть над контроллером. А над методом надо прописать либо GetMapping или RequestMapping( value = %твой_валью% method = RequestMethod.GET)
>>1303954Мне кажется, что ты не понял смысла енумов. Зачем тебе получать одно значение, которое в этом же енуме, через другое. Пусть метод в зависимости от параметра возвратит тебе енум.
>>1303954String url = "https://2ch.hk/pr/res/1299742.html#1303954";URL obj = new URL(url);HttpURLConnection connection = (HttpURLConnection) obj.openConnection();connection.setRequestMethod("GET ASECHKA_PISECHKA");BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));String inputLine;StringBuffer response = new StringBuffer();while ((inputLine = in.readLine()) != null) { response.append(inputLine);}in.close();
>>1303974Хочу чтоб вся "арифметика" на этом перечислении была в одном месте.Чую, что проще написать static class самому и заебенить туда final констант. Оно ж вроде тоже самое при компиляции из enum делает.
>>1304069Если тебе скажут уменьшить необходимый объём памяти для жаба-приложения, покопавшись в байтах, тоже пойдёшь выполнять?
>>1304098там этот parseUnsignedInt точно так жетолько наоборот работает. long ell = Long.parseLong(s, radix); if ((ell & 0xffff_ffff_0000_0000L) == 0) { return (int) ell;}
>>1304121Да какие там вычисления, это задания к первой главе. Только-только книгу открыть успл.Посоны, как тут по-модному на стримах сделать? Нужно найти символы которые лежат за пределами диапазона ASCII. Я чуток поковырялся, но так и не осилил. Это всё ваше функциональное СЛОЖНО. С наскока хуй поймёшь чо там и как.
>>1304134>>1304139Проебался немного, там инты будут, поэтому так лучше: str.chars().filter(ch -> ch > 0x7F).mapToObj(ch -> (char) ch).forEach(System.out::println);
>>1304196А за что именно в энтерпрайзе отвечает джава? Серверное ПО, обрабатывающее запросы клиентов? Если так, то разве нет других языков, справляющихся с этим лучше?
>>1304190str.chars() возвращает IntStream, поэтому println выведет числа вместо символов, ну можно еще.forEach(ch -> System.out.println((char) ch))
Когда стоит использовать PowerMock в тестах? Правильно ли я понял, когда нужно подменить статические классы на классы заглушки и проводить модульное тестирование?
>>1304204>разве нет других языков, справляющихся с этим лучше?Представляешь, нет.Неожиданно, да?Или ты думал, что вот все такие дураки, сидят тупят.И тут появляешься ты - на белом коне, молодой и красивый.И говоришь - "Жаба гавно!".И все такие - "Да, да, он прав, как же мы раньше не понимали!".И все начинают писать на шарпе, лол.
>>1304335Что валидировать-то? Что данные не пустые или расшифровать и проверить содержимое? Если второй случай, почему просто не использовать https?
В спринге есть возможность изкаропки зашедулить таски на определенное время в будущем, так что бы они пережили перезагрузку сервера? Нашел такое: https://stackoverflow.com/questions/31969251/how-to-restart-scheduled-task-on-runtime-with-enablescheduling-annotation-in-spr но как-то не хочется самому ебаться с сохранением/восстановлением тасков.
>>1304139>>1304140Добра!>>1304177Core Java SE 9 for the Impatient. В треде советовали недавно.Охуенная книга и задания интересные. В одном просят написать метод, печатающий строку, а в следующем просят пойти нахуй в исходники jdk, найти там использование labeled break или continue и переписать это место без них. Алсо, может кто-нибудь подскажет, где я могу найти эти самые labeled break или continue в сорцах?
>>1304397на мудила, что не может рекурсивно грепнуть, тебе обрывы с этикетками:https://pastebin.com/vVXC8yMj
Петян, это опять я >>1303954. Спасибо за нихуя, разобрался сам.enum direction{ UP, RIGHT, DOWN, LEFT; direction clockwise(){ return this.values()[(this.ordinal() + 1) % this.values().length]; }}
>>1304528Думаю, смысл сего упражнения был в том, шоб поциент сначала пытался добавить 200 метров исходников в идею, сосал хуй, лопатил сорсы руками, смотрел на них глазами, прочитывал пару комментов, потом вспоминал, что есть греп что посоны на дваче всегда помогут, ведь тут все его друзья, и находил наконец свои брейки. А на брейки с этикетками всем похуй.
>>1299742 (OP)>A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.upwork и crossover фрилансом не считается?
>>1305223На апворке по жаве заказов много. Не так много как на жс конечно но точно в лидерах когда я проверял пару месяцев назад.
подключил библиотеку telegrambots в мавен, но аннотации@EnableTelegramBots отсюда https://github.com/rubenlagus/TelegramBots/wiki/FAQ#spring_boot_starter не видно. чяднт?
Петян, как там рефлекшенами или какой другой хуйнёй получить при рантайме список всех всех классов, которые имплементируют определённый интерфейс?
>>1305370Решение знаю. Но зачем тебе? Просто оччень знакомая специфическая задача, наводит на некоторые мысли
>>1305424чтоб потом расширять функциональность программы лишь одним добавлением файла с классом, который реализует интерфейс, без ебатьни с переписыванием нескольких мест. что-то вроде плагинов будет.
>>1305459В maven пропиши:<dependency> <groupId>org.reflections</groupId> <artifactId>reflections</artifactId> <version>0.9.11</version> </dependency>И сделай похожий метод:public static void checkIfRequestsImplementValidate() throws NoSuchMethodException { Class<BaseRequest> baseClass = BaseRequest.class; Reflections reflections = new Reflections(); Set<Class<? extends BaseRequest>> subClasses = reflections.getSubTypesOf(baseClass); try { for (Class<? extends BaseRequest> clazz : subClasses) { clazz.getDeclaredMethod("validate"); } } catch (NoSuchMethodException e) { throw new NoSuchMethodException("Не реализован метод validate() в одном из подклассов класса BaseRequest"); } }
>>1305466Добавлю, что у меня метод проверяет, что все подклассы класса BaseRequest имплементируют интерфейс (а именно его метод validate()). Под себя подпили короч.
Как в спринг буте добавить путь к файлам за пределами приложения без @EnableMvc?Гугл говорит add your own @Configuration class of type WebMvcConfigurer but without @EnableWebMvc. https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-spring-mvc-auto-configurationи писать в нем@Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/1/") .addResourceLocations("file:///C:/"); // путь я хуй знает как писать вообще 1 слэш 2 слэша 3 хуй пойми. }Но чет тимлиф шлет меня нахуй и картинки не показывает.
>>1305459Бля, только сейчас перечитал твою задачу и понял. Тогда я тебе хуйню посоветовал. Вот по твоей теме:https://stackoverflow.com/questions/2548384/java-get-a-list-of-all-classes-loaded-in-the-jvmПолучишь список всех классов в пакете для плагинов, а там просто пройдешься по ним через getInterfaces().
>>1305476збс, нашёл способ, подцепил эту либу, запедорил рефлекш и там уже был метод getSubTypesOf, что как раз это и делает. спс!
Ребят, помогите плиз.Учу гит. Было состояние репозитория как на пик1. Решил rebase images2 сделать на develop(его видно на пик2). Гит чёт там предложил замёржить images2 и origin/images2. В итоге получил пик2. Как вернуть назад к состоянию пика1?
>>1305521git log --all --graph или git log --allВыбираешь предыдущее состояние в логе, запоминаешь 5 циферок его хэша и пишешь это:git reset --hard <цифры хэша>Должно помочь.
>>1305474Не шарю в спринге, но попробуй задать относительный путь к файлу: ./spring/sasat/yourjpeg. И да, надеюсь, ты в курсе, что в линуксе прямые слэши, а на винде обратные. Хотя хуй знает, может и не в этом дело вовсе.
Вопрос нуба. Вот есть у меня на web application список юзеров из бд, чтоб админ мог видеть и банить паскуд.Я его достал sql запросом, и засунул в коллекцию. Но я не понимаю, какую коллекцию использовать для таких манипуляций, ведь при обновлении страницы у админа, надо перезагружать список всех пользователей и создавать новую. Вроде как LinkedList быстр на добавление в конец? Array не использовал, т.к. не было надобности доставать юзеров(в данном конкретном случае) по Id.Кароч я аутист, дошёл до ЕЕ, но до сих пор не могу вкурить где какую коллекцию юзать.
>>1305607LinkedList почти всегда можно успешно заменить ArrayList (кроме случая, когда тебе надо в середину списка добавлять). Используй какой-нибудь хэшмап из идентификаторов на юзеров. Ну или если нужен тупо список пользователей, без айди, то хэшсет. Вообще от задач зависит, с хэшсетом можно будет быстро искать пользователя, а ArrayList позволит обращаться к юзерам по индексу. Короче смотря что тебе надо.
Помогите написать условие.Есть лист объектов. В каждом объекте по 4 значения.GetData GetA GetB GetCGetData - там просто число, которое будет увеличиваться с каждым днём.Нужно сравнивать объекты между собой, 0 и 1 день, 1 и 2 день и так до конца. На экран надо вывести те объекты, в которых getA будет больше, чем в предыдущий день, и getB будет меньше, чем в предыдущий день и сумму getC этих дней
>>1305650Забыл сказать, анончики, там дата не константо увеличивается на единицу, может быть 5 , а потом 9. Так что, наверное, лучше по объектам сравнивать, а не по дате, просто важно, чтоб на выходе был день x+1, который бы был лучше по условиям дня x
>>1305650Я нихера не понял, ну пройдись циклом, начиная со второго и сравнивая с предыдущим, и выведи, если условие выполняется. А вообще вместо этой бесполезной простыни лучше бы код написал.
>>1305532Да я уже по всякому пробовал. Весь стаковерфлоу перерыл. И по пути типо file: с разным количеством слешей/наклонов и просто путь до диска полного.Мне кажется тупо надо где то аннотацию добавить или еще какую то залупу. В спринге очень много такого говна которое даже нигде не упоминается а оно ДОЛЖНО БЫТЬ.
>>1299742 (OP)>>1301640суп, джавач.Подскажите, пожалуйста, годный курс на stepik по java.inb: прошёл курс java на кодеакадему,sololearn, читаю java 2 Shildt, и HeadFirst Java.
>>1305695вопрос почти снят. увидел его в шапке.что после него делать на том же степик? смотреть туториалы жидбрейнс?как до джуна дорасти?
>>1305705Это сложный и тернистый путь, но есть неплохой план:1.Ищешь вакансию куда хотел бы попасть2.Смотришь требования3.Засовываешь себе в анус говнокурсы по освоению хеллоу ворлдов за 4 месяца4.Пиздуешь гуглить документации и статьи
>>1305679https://stackoverflow.com/questions/45651119/spring-boot-images-uploading-and-servingЧтобы эта хуета заработала где то нужны еще какие то настройки?Потому что блять не работает нихуя. сука ебаный спринг бут блять все изкоробки блять говно сука ебучее
>>1305705На степике дальше пидорась вот эти два курса - один по дженерикам, второй по фукнциональму программированию.А после там же смотри в полглаза курс по базам данных и принимайся за Спринг.На джуна после всего этого не возьмут, но на стажировку вполне. Какой город?
>>1299742 (OP)Инженер тестировщик итт. Вопрос в том, куда развиваться дальше? Я год гружу системы различные, дело интересное. Но как мне кажется мало кому нужное за бугром. Все вакансии которые я видел qa, там везде требуется автоматизатор плюс нагрузочник. Я пока только нагрузочник. Есть мысли изучать параллельно автоматизацию, это интересно, оплачиваемо и самое важное для меня есть возможность работать удаленно. А есть второй вариант, пойти в разработку бэк эндов всяких банков и тд.Я не очень понимаю, если я буду искать джавистом, то что именно мне искать? Какие варианты развивтия с таким стеком Jmeter, HP LoadRunner, Java core, SQL, чуть чуть спринга, Netty, Андроид где то пару лет назадНо это уже неактуально, там все на котлине пишут как я понял можно выбрать?Если б компании разрешили еще и автоматизацией заниматься, был бы круто. Но у нас как я понимаю не очень любят терять нагрузочников.Так что какой стул выбирать?
Посоны, есть один двумерный массив, его нужно заполнить построчно и прервать ввод по пустой строке. Как это можно сделать правильнее? Если можно, хинтаните как.
Можно как-то заставить спринг конвертировать разные POJO не только в 2xxый json, но и в 4xxый json и тд? Пытался гуглить, но везде руками в контроллерах превращают POJO в ResponseEntity, а я не хочу что бы это говно было размазанно по всем контроллерам. Но экспешны тоже не хочу, да есть нормальное место где можно обработать эксепш в нужный респонс, но эксепшн сильно по смыслу тличается от того что надо.
>>1305909https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annotation/ResponseStatus.html
Oracle Java FX SceneBuilder 2.0 и Gluon SceneBuilder 10.0 - это одно и то же? Или разные приложения?Если разные - какое лучше?Если одно, то, видимо, глюон новее, да?
>>1306159Nie. Не ясно. А на чём тогда строить графические мультиплатформнные приложения, если не на FX?
>>1306167ну, а как? Вот, играю я в d&D. Мне нужна удобная приложуха для того чтоб быстро искать правила или, там, тречить инициативу. Хз. Не важно, на самом деле. взял джаву, набросал. Нужна ещё кому-то - доделываешь.Разве не так?
>>1299742 (OP)Джаваны, ради смеха, есть ли реально какой-нибудь простой и кроткий в понимании код, который в Котлине выглядит убого и тупо, а в Java вполне себе стройно и понятно? У меня не получилось по-доброму потроллить Котлиноёбов. Я, на самом деле, ничего против них не имею, просто интересно.
>>1306503>Что они иначе считают? В вопросе сначала разберись, зелень. И не кричи на мать! Интелиж на чём сделан? Поддержка JX до когда будет? А? а?
Джаваны, Thread Programming by Paul Hyde все еще лучшая вводная книга по канкаренси? Или что годное поновее имеется, смущает 99 год
>>1306248>простой и кроткий в понимании код, который в Котлине выглядит убого и тупо, а в Java вполне себе стройно и понятнотолько наоборот есть
>>1305761Так блядь. Я победил это говно и добился динамической подгрузки картинок с диска. Збс. Наконец то можно загрузить картинку через хтмл тыкалку и сразу ее увидеть на странице и не перезагружать сервак целиком. Потому что папка помеченная ресурсес даже у аллаха в жопе за пределами пакета будет КОМПИЛИРОВАТЬСЯ ВМЕСТЕ С ПАКЕТОМ НУ АХУЕТЬ ТЕПЕРЬ. Но я это поправил.Интуитивно все ахуеть просто. ИДЕА еще поднасрала своими настройками.Буду держать Вас в курсе.
>>1306165Электрон же. Лучше его освой, хоть на галеру возьмут. А на свингах и прочих син билдерах работы нет.
Блять, я не писал на сабже несколько лет, хочу вкатится обратно. Чё за параша, в богоподобную Жабу запихали блядский var?
>>1306730А вот и ретрограды подъехали.>>13067112-й вариант со стороны как-то более естественно выглядит.
>>1306832Это и есть джава. В котлине нет чекед эксепшнов, поэтому там не пришлось бы внутри мапа писать трай, но снаружи скорее всего пригодилось бы.
>>1306711Первый вариант, конечно. Этого >>1306833 не слушай. Во втором варианте у тебя в цикле создается дохера лишних ссылок на список, гарбаж коллектор очень быстро придет за тобой и укусит за бочок.
>>1299742 (OP)Анон, ты работал с Sentry для джавы? Поделись опытом конфигурирования для спринга, пожалуйста. Сообщения отправляются, но на сайте эксепшены не отображаются.https://ru.stackoverflow.com/questions/916189/spring-boot-%d0%b8%d0%bd%d1%82%d0%b5%d0%b3%d1%80%d0%b0%d1%86%d0%b8%d1%8f-sentry
>>1306860А разве ссылка на список, создаваемая в цикле не падает в триугольник? Тоесть, если я правильно понимаю, для мусорщика там работы нет, что в первом, что во втором варианте.
>>1306872>ссылка падает в треугольникЯ уж не знаю, конечно, чего там навводили со времен 8 жавы, но в 8 жаве такой херни не было
>>1306872>триугольникну ёб твою мать>>1306873В смысле? А как раньше было? add() создавал копию объекта по ссылке и добавлял в elementData?
>>1306879Короче я понял, что имел в виду под "падением в треугольник". Да, копии объекта не создаются, gc нечего забирать, тут я неправ. Но вот копии ссылки nextRow создаются на каждой итерации, так что ты все равно тратишь на это память.
>>1306881А, блять, ссылки же уничтожаются при выходе из тела цикла. Ладно, я обосрался, тогда все норм у тебя.
Посоветуйте ресурсов с практическими задачами. А то про стримы почитал, а закрепить на практике негде.
>>1306881Кстати, похоже в этом варианте после clear() в куче останутся бесхозные интеджеры. Такшо, если я не ошибаюсь, работа для gc появляется как раз именно тут.
>>1306822Swing. Его используют. Его поддерживают. У него есть коммьюнити. На нём есть коммерческие проекты интилж.
Джаваны, помогите. В Spring PermissionEvaluator переопределяю метод hasPermission(... Serializable targetId, ...)в котором ищу объект по id и потом определяю есть ли доступ к объекту. Что возвращать, если объект с id не найден? Если false, то клиенту вернется 403 вместо 404, если true, то придется в аннотируемом методе еще раз искать по id.Тут код подробно расписан: https://pastebin.com/E2ZpRgZs
>>1306916нахуя тогда создавали javaFX? я-то понимаю, что создать новый выблядок не проблемма, но не пустом же месте его создавали. у свинга просто уёбищный подход к событиям и анимации, нихуя нету под управления пальцами, ну и блять эти ебучие компоновщики там, одно воспоминание о которых, вызывает у меня лёгко чувство отвращение и пренебрежение, как от тюремного изнасилования.
в этом поведении, когда поля наследуемого класса не перетирают поля родителя, есть какой-либо смысл? или ещё одна жаба-фича, которую стоит принять и полюбить?https://pastebin.com/UBgG149s
>>1307013Пошел нахуй. Хочешь - учи и дрочи на него. Удачи с работой на нём, отпиши в тред как найдёшь, полюбуемся.
>>1307015ну а без кукареканья ты по существу что сказать можешь? ну кроме, что бляди из пидраграда всё своёй проект со старого дерьма мигрировать не могут, и нам, значит, тоже не нужно.
>>1307085Мелкобуква порвалась. Я тебе уже пожелал удачи с поиском работы. Хочешь обоссать весь тред и заодно всех остальных погромистов? Неси сюда где твой fx активно юзается, где он нужен, как туда попасть, покажи нам крупные коммерческие проекты в которые можно вкатится. Без них - ты говно и твой fx тоже.
>>1307096ах, ясно, понятно, ты просто макака в поисках работы, что мониторит вакансии. ну хули, раз по существу претензий нет, ебальничком и не хлюпай.
Как лучше проверять уникальность ключа при добавлении данных (@UniqueConstraint имеется)? Spring Data + Hibernate + @Transactional сервис.1. SELECT перед INSERT - самый очевидный вариант, при этом: лишний запрос к бд, усложняет код, не гарантирует уникальность.2. saveAndFlush() в try/catch и выкинуть собственное runtime-исключение c @ResponseStatus.3. @ExcepionHandler.Есть какие-нибудь best practices?
Как там в яве импортировать правильно?У меня есть два класса в двух файлах:1)Класс Perdak лежит в пакете model.human.bodypartsлежит в файле src/model/human/bodyparts/Perdak.java2)Класс Pidor лежит в пакете model.humanлежит в файле src/model/human/Pidor.javaОни оба должны знать друг о друге. Как там пропихнуть импорты?
>>1307100>бляди из пидраграда всё своёй проект со старого дерьма мигрировать не могутРебят, про что несёт вообще? Есть переводчики с пахомьего?Шизик в стадии обострения, тебе же красным по голубому написали, блядь, что работы на эфиксе НЕТ. Докажи обратное, а не огрызайся. Обидно тебе, что целый хелоу ворд в окошке сделал, а твой любимый fx обкакали?
>>1307127>>1307119петушок, ты читай внимательнее, мне не нужна работа жаба-макаки, о которой ты второй день грезишь. я тебя спрашиваю, что же за минусы ты там нашёл в javafx, но ты же блять нихуя ничего не знаешь, мычишь и обсераешься тут всем на смех.
>>1307180Так-то я джуно-мидл, и свободно гребу на галере. Как же сильно тебе припекло от моих слов, да? Наверно ты до разрыва ануса учил эфэкс и когда тебя обосали на первом собесе, сказав что нужен свинг, ты припёрся сюда, только вот палишься сильно, мелкобуква.
>>1307187типичное нытьё петуха-макаки из бокса-курятника. погромист сверху сказал прыгать, макака и прыгает в такт с 8-16. зачем прыгать и как долго, макака не знает, дальше курятника никогда ничего не видела. заебись, чё.
>>1307194>пук>срёньк Поди подмойся маня.>>1307196Как только найдёшь работу где он юзается, и как только завезут поддержку из оракла, тогда может и расскажу тебе.
>>1299742 (OP)Надо запустить приложение в докере под 10-й джавой на убунте. Не могу нагуглить пакет 10-й джавы. Как она называется в репозитории?
На работе занимаюсь базами данных (спринг, гибернейт). В каком еще направлении можно развиваться, чтобы не остаться без работы? Вот тут чувака с эфиксом обоссали. Как не стать таким как он?
Я крестовик, и так получилось, что мне к завтру позарез нужно вникнуть в джаву.Что прочитать/пролистать про сам язык, про какие-то стандартные библиотеки/решения, чтобы более-менее ориентироваться в коде?
Хочу разобраться с JPA. Посоветуйте статей. Написал такой pom-файл, но javax.persintence недоступен, а при запуске возникает ошибка.<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>main</groupId> <artifactId>main</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.1.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.1.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>5.1.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jpa</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> </dependency> <dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>9.1-901-1.jdbc4</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build></project>
>>1307544JPA относится к Java EE, а его API ты добавить забыл.Допиши<dependency><groupId>javax.persistence</groupId><artifactId>persistence-api</artifactId><version>1.0.2</version></dependency>
>>1307616Или лучше так:<dependency> <groupId>javax.persistence</groupId> <artifactId>javax.persistence-api</artifactId> <version>2.2</version></dependency>
Друзья, подскажите хорошую книгу/курс/другой ресурс по jpa в целом, а не про конкретную реализацию типа хибернейта
Не могу найти стажировку в Москве, может быть, попробовать онлайн-стажировку в зарубежных компаниях? Есть такое?Джун
Если при копировании файла из стрима методом Files.copy(InputStream, Path) возникнет IOException, в таргет-файле останутся какие-то байты или он полностью удалится? Аналогично, если при удалении Files.delete(Path) возникнет IOException, файл останется нетронутым или только кусок файла будет удален?
>>1307235DTO используется чтобы в случае изменения Entity не обосраться с API. >>1307443Ведроид, облачнодроч.>>1307743Нет.>>1307506А ещё проект на джаве безопаснее имеет конечные сроки разработки.>>1306835Нельзя, т.к. это лямбда, наследующая Function, в сигнатуре которой нет выброса чекед исключений.>>1306623Двачую.>>1307013Тем что это скрещиваение ужа с ежом, которое не взлетело и после этого нигде нахуй никому не упало из-за ебической жадности сложной гуевой жабы до ресурсов. Те же жидбрейнс и майнкрафт из коробки ещё сносны, но по мере обвешивания кастомными перделками потребление всего растет по экспоненте.>>1305909>Handler'ы смотри.>ResponseEntity.Builder смотри.>Не благодари.>>1305348>Проверь версию.>Сделай реимпорт.>Почисти кэш идеи>>1303680>Forwarded URL = /403Скорее всего у тебя с мок юзером что-то не то.
Немного оффтоп. Как правильно получить JSON объект полей из html формы?1) создать объект в скрипте var obj = { “name”: $(‘form’).val()}2) сериализовать поля формы : var arrObj = $(‘form’).serializeArray(); Перевести массив в формат JSON.Второй подход кажется более универсальным, так как можно добавлять поля в форму и не менять js скрипт.
Сап, /pr/Кун 24 лвл, планирую вкатиться в джава с нуля (программистского бэкграунда нет), подойдут ли платные курсы на hexclet для вкатывания?По codeacademy пару хеллоу ворлдов написал.гуманитарная вышка, английский С1
>>1299742 (OP)Как можно дать для себя определение лямбды в джаве? Можно ли думать о них как о реализациях функциональных интерфейсов, или это слишком грубо?
Как в джаве можно управлять разделяемыми ресурсами? Например, одна HashMap должна быть доступна нескольким классам, которые выполняют с ней разные операции в разных потоках. Во что ее завернуть?
>>1307977Collections::synchronizedMapНо это полный лок на всю мапку, лучше тогда ConcurrentHashMap у нее будет несколько на разные области мапки.Или не выдавать классам саму мапку, а некий другой интерфейс где уже самому руководить локами.
>>1307963Как об удобной замене внутренних анонимных классов. Не уверен, но думаю, что за кулисами все равно создается анонимный класс.
>>1299742 (OP)Ля, как убрать эту залупу, чтоб если слово было окружено двоеточием, то чтоб оно не превращялось в монолит????intelij idea
>>1308213ради денег смысла вкатываться нет. 1) Все "настоящие" программисты больны этим со школьных лет. Пытаться штудировать эти учебники через нехочу нет никакого смысла - у тебя нет такой силы воли и каменной жопы2) Это неблагодарная работа, дающая геморрой, сколиоз, близорукость, отсутствие навыков общения. Ты все 9 часов будешь сидеть на стуле, молча, перед монитором, и пердолить очередное говно. Уж лучше учиться кабанчиком подскакивать или там машины ремонтировать - больше перспектив
>>1308219Так мне ж интересно это всё, и я не рассчитываю на 300к/наносек после месяца обучения, отдаю себе отчет что сначала и за копейки придется поработать.К монотонной, "сидящей" работе готов.
>>1308225прочитай книгу по синтаксису жавы. Потом начинай делать проекты со всяким сетевым взаимодействием, можно без фреймворков. Важно количество практики, а не прослушивание говорящей головы
Анончик. Есть одна JSP. На ней есть форма. В одной из полей пользователь вводит количество. В реквесте на JSP приходит атрибут "цена". Задача: как можно средствами JS вывести на странице в реалтайм СТОИМОСТЬ?
>>1308219А если я хочу планировать и организовывать производственный процесс? Мне нравится придумывать решения проблем и воплощать их в жизнь. В любом случае придётся начинать рядовым джуниором, дабы прочувствовать, вникнуть как всё это устроено и затем взбираться по этой лестнице до project manager'a
>>1308551>А если я хочу планировать и организовывать производственный процесс? Мне нравится придумывать решения проблем и воплощать их в жизнь.Иди сразу в бизнес. Хоть киоск с кофе напримерПрограммисты это тупые исполнители. Отсюда и до обеда и все такое
Пиздец почему по запросу типа "HTML ШАБЛОН ПРОСТОГО БЛОГА" вылазит пикрил параша блять, мне просто нужен простой шаблон без свистоперделок и лишнего шлака, хуле их нет блять?!
Батянь, а что означает такой интерфейс:public interface bla<T, M> {...T getFoo ();M getBar ();...}что это за <T, M> в объявлении интерфейса?
может ли абстрактный класс не иметь абстрактных методов? хочу пиздануть абстрактный класс, чтоб никто не мог создавать еговшни инстанции, или это пиздец и растрельная статья в вашем этом жабном варианте ООП?
Ещё такая штука, есть абстрактный класс без абстрактных методов с полем representation и методом toString(). Вот:public abstract class Foo{static String representation = "?";Foo(){}public String toString(){return representation;}}от него наследует класс Bar:public class Bar extends Foo{static representation = "#";Bar(){}}Как сделать, чтоб toString() на объектах Bar выдавал "#" ? Нужно ли будет обязательно перегружать toString()? Что-то как-то это ваше ООП больше морочит, нежели позволяет избегать повторения кода.
>>1309393Двачую вопрос. И еще, подскажите, вот эти буквы T, M, V, R выбираются не от балды, а по какому-то соглашению. Можете напомнить? Где-то видел, а теперь не найду.
В @ExceptionHandler можно как-то отправить стандартный спринговский ответ"timestamp": 1512713804164,"status": 404,"error": "Not Found","message": "No message available","path": "/some-dummy-url"изменив только сообщение и статус без ResponseEntity?
Милые джаваны. Я изучаю Spring и сопутствующие вещи. Сделал хеллоуворлд на Spring MVC + Hibernate. На локальной пека работает. А как это дело выгрузить во внешний мир чтобы показать, мол, смотрите, какой хеллоуворлд сделал. Есть ли бесплатные серверы, чтобы просто выложить для пары человек, без анальных подписок и хардкорного пердолинга с настройками?
>>1310158Я просто не понимаю как это всё работает нахуй, пиздец какой-то, документация хуета, гайдов в интернете ноль, одни нахуй заготовки для копипастинга.
>>1310159Открыть Spring in Action или какого-то баелдунга чекнуть или просто попердолится и поекстендить и посмотреть самому не?
>>1310165>Открыть Spring in Action или какого-то баелдунга чекнуть>Я блять уже всё это расковырял до самых орешков.>нонипонял(((((Почитай Spring in Action 4, где есть глава про security
>>1310159Я не так давно залил курс на эту тему.https://coursehunters.net/course/spring-i-hibernate-dlya-novichkovНачиная с 345 видео. На английском, но очень понятно и доступно, по смыслу поймёшь.Если поможет, можешь скинуть мне на один дошик - не откажусь.
Сука, как же меня заебала криворукая врожденная уёбищность Java и всего, что с ней связано.Изучаешь Spring по видеоурокам, делаешь один-в-один, запускаешь - не работает. Миллиард ошибок, хуй поймёшь в чем дело.Оказывается, у меня в Мавене версия более новая, да IDE другая (не Eclipse). Как вообще эта параша в энтерпрайзе работает, если замена 5.0.2 на 5.1.2 убивает нахуй всё.Такое ощущение, что Java-петушары специально делают всё максимально говноедским, чтобы конкуренции не было, ибо брезгливость берет верх зачастую.
>>1310192Раньше я полагал, что самый уёбищный язык - это Perl. Я в ойти со временъ cgi-bin, если вы понимаете, о чем я.Но глядя на современную Java, как родовая травма, что даёт полноценно использовать идею фреймворков, я понимаю, что Java ждет такая же судьба.В описанной проблеме виновата IOC, которая совершенно не дебажится и не будет эффективно дебажиться в Java никогда.
Смотрю видео-урок (ссылка с таймкодом: https://youtu.be/DclLJt8zDWk?t=2285). Человек делает таблицу в MySQL через IntelliJ IDEA, у него генерируется SQL-скрипт (пик 1).Я досконально повторяю за ним, добавляю такие же поля, но у меня генерируется другой скрипт (пик2).1. В чем проблема? Почему генерируется другой код? 2. К тому же этот SQL-скрипт не хочет выполняться. Зачем IntelliJ генерирует заведомо неисполняемый код? 3. Почему у меня всё в lowercase?
>>1310319Охуеть. Может вообще тогда IDE будет рандомный код генерить?У джаваблядков логика меня всегда поражала.
>>1310322Пока ты дрочил на "умные" IDE, IntelliJ и джавабоги уже обогнали все передовые технологии искусственного интеллекта. Идея чувствует в тебе шарпопетуха и отказывается генерить нормальный код. Уверуй в джаву, молись Идее и прозреешь, смертный.
Читаю хорстмана , так как изучал плюсы а там много отсылок и это приятно, но недавно сказали что эта книга не оч и мало примеров сравнимых с реальностью, посоветуйте пожалуйста хорошу книгу по жабе.
Есть List<Map<String, String>> list = new ArrayList<>();Map<String, String> map = new HashMap<>();foo.getFoo().forEach(dummy -> { map.put(dummy.getId,dummy.getName()); });list.add(map)Т.е просто создать одну мапу, путнуть в неё всё и засунуть в лист проблем нет. Но мне нужно сделать три мапы, впихнуть каждую в лист, а в эти мапы put только по 3 объекта.getFoo() может вернуть мне как 1 объект, так и 999 объектов и мне нужно разбивать их по три и засовывать в мапы. Т.е : 1,2,3 -> map1 , 4,5,6 -> map2, 7,8,9, -> map3, 10,11,12 -> map1, 13,14,15 -> map 2 и так далее. Надеюсь, объяснил понятно. Ну и загвоздка в том, что я не знаю как это сделать. Пытаюсь через обыкновенный for(i=0; i<foo.getFoo().size(); i++) но даже так не получается, заебался уже голову ломать. Чё делать?
>>1310597Если правильно тебя понялЕсли ты любитель пощекотать очко стримами как я, ты можешь взять stream() из getFoo() и, используя limit() и skip(), загружать что тебе нужнорешение конечно убербыдлятское, но первое что в голову пришлоА вообще можно в два цикла захуярить
>>1310126Google Cloud, базарю ещё захочешь. Деплой через плагин в мавене, личный пердебиан с 5гб места, доменный адрес с кучей открытых портов.
Посоны, какие РЕАЛЬНО есть преимущества у выпускника айтишной специальности СНГшного вуза перед средним юристом или инженером?
Посоны, какие РЕАЛЬНО есть преимущества у выпускника айтишной специальности СНГшного вуза перед средним юристом или инженером?
>>1311409Вкатится джуном можно на 1~2 семестре, к выпуску из манявера уже можно быть синьёром-помидором или мидлом-повидлом и успешно завести трактор, покажи мне таких юристов, которые нужны в других странах, где системы прав кардинально различаются и инженегров, которые могут устроится во время универа, а не по окончании.
>>1310715Ну короче я сделал говно-костыль.List<Foo> listF = foo.getFoo();for(int i = 0; i<listF.size(); i++){if(listF.get(i) != null){ map1.put(listF.get(i).getId(),list.get(i).getName());} else{ return;}}Ну и там дальше такая же хуйня 8 раз ещё, на map2 и map 3. По мне так лютый говнокодинг, посмотрю что синьёр-помидор скажет.Хуле тред умер?Мы теряем позиции ало
>>1312093бля я тоже, у меня есть возможность попасть в епам? А то сижу жабой с инглишем занимаюсь, а потом специальность в дипломе все надежды ёбнет
>>1311409Я имел в виду с точки зрения работодателя. Почему все пытаются набрать студентов 4-5 курсов профильных специальностей на должность джуна?
>>1312750Потому что если ты затерпел 4 года в унике на такую специальность где , в основном, в реалиях РФ, занимаются лютейшей некрофилией, то ты сможешь выучить что угодно
Джаваны, подскажите советом. Использую JDBC. Как правильно описать класс подключения к бд. Читал, что нужно использовать синглтон. Если мне нужно работать с несколькими таблицами, то все методы по CRUD операциями с сущностями описывать в этом классе?
>>1312438Главное наличие кошерной вышки, желательно технической. Не техническая тоже ценится - на всякие специфичные проекты, где требуется хорошее знание предметной области.
>>1313446Если тебе нужен прямо тру-ORM, тогда можешь поступить как в JPA - один класс - круд одной сущности
>>1315809Корпоративы у всех, это же джавапетухи - офисный биомусор.А wannabe-джуны и стажеры поняли, что все попытки можно оставить до 15 января.
Ананасы, привет, подскажите, на данный момент овладел java на таком уровне: ООП, немного (совсем нихуя) шаблонов проектирования, многопоточность, servelet, коллекции. Ну и еще SQL. Рили с таким набором устроиться хотябы на стажера-отсоса, работать готов за еду, лишь работать.