Этого треда уже нет.
Это копия, сохраненная 11 декабря 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
1541050771308.jpg57 Кб, 800x494
Java thread #75 /java/ 1287973 В конец треда | Веб
Прошлый - https://2ch.hk/pr/res/1281179.html (М)

Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?

А: Нет, не поздно.

Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?

A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.

Q: Хули все книги на английском?

A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.

Q: Что скажете за джавараш?

Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.

https://github.com/qqqlll/Java-Thread/wiki
2 1287979
>>287973 (OP)
Объясните, в чем джава лучше сисярпа, кроме кроссплатформенности? Такое ощущение, что сисярпа во всем если не превосходит джаву, то равен ей. Почему кто-то продолжает вкатываться?
3 1287987
>>1287960
Бля, я не знаю почему, но я не могу тебя понять, вообще никак, иди бля книжки почитай там, или ещё что-нибудь поделай развивающее, шизоид сука.
4 1287993
>>287979
1) Потому что 90% серверов работают на никсах и до-диез на них это отдельный вид извращений
2) Чем лучше? Можно бенчмарков в студию пожалуйста?
3) Перекатиться на Шарп значит переносить существующую кодовую базу.
1528197735.jpg26 Кб, 604x393
sage 5 1287995

>2К18


>статическая типизация

6 1287997
>>287995

>РЯЯЯЯЯ ДА СМЫСЛЕ СТРИНГ БЛЯ МНЕ ИНТ НАДА

7 1288000
>>287995

>Дженерики


Съеби
8 1288001
>>1287843
Я все ещё работаю жабамакакой, так что не думаю. Просто заебало дрочить один язык ради одинаковых задач.
sage 9 1288002
>>287997
Ты понимаешь, насколько ты жалок? Я, как настоящий чад, могу вызвать любой метод и обратиться к любому свойству любого объекта. Более того, я могу прям на ходу добавлять и удалять свойства и методы объекта, потому что мой язык меня не ограничивает. Он знает, кто здесь босс.
А ты делаешь то, что тебе компилятор скажет. Он пошлёт тебя нахуй, если ты попытаешься сделать что-то подобное, он тупо не скомпилит программу! Вывод: ты омежка и куколд.
10 1288003
>>288002

>РЯ ДА СМЫСЛЕ НЕ РАБОТАЕТ?! СМЫСЛЕ БЛЯТЬ НЕ РАБОТАЕТ СУКА?!

11 1288013
>>288002
А ты в своём пистоне вот так можешь
a = (int) "Блять я обосрался"
13 1288020
>>288013
>>288014
Это не питоняша, это жскукарек
14 1288028
>>288020

>Это не гавно сорта "с орешками", это гавно сорта ''После пивандопалы"

15 1288029
Почаны кто хочет учить шпринг и жабу вместе оставляйте фейкомыльцо. Будем пытаться чет пилить)0
16 1288032
>>288029
weydiLM`leANUSgmaio\_lPUNCTUMc9jDom
17 1288035
>>288029
Зачем швепс мешать с яванским кофе?

>Будем пытаться чет пилить)0


Звучит как "я не умею, но вместе мы сможем".
18 1288065
>>1287960
if ("yoba".equalsIgnoreCase(a)) {
print("Хули");
} else {
print("Илух");
}
19 1288078
Анонисы, имеются значит вот такие вопросы:
Что конкретно нужно знать, чтобы взяли с нулем опыта реальной работы? (И что вообще этот джун делать будет?)
Если я просто знаю и понимаю, для джуна это нормально? а то я чувствую, что я как мудак все делаю наооборот, там где нужны просто знания, что это за штука и что она делает - я углубляюсь, а где наоборот нужна практика, приняв во внимание концепцию - иду дальше. Ткните котенка носом плиз, моя тревожность выходит из под контроля.

Что имеется на данный момент:
- Java Core, без конкаренси ёба уровня, то есть до уровня монитора, лочек, шаблона producer-consumer или что-то такое, забыл уже название бля.
- SQL, все постандарту знаю-делал хотя бы раз, джоины - много раз.
- maven, git, не знаю нахуй я это пишу но раз уж похоже как на резюме уже пусть будет.
(ну и ниже мои сомнения по поводу знаний)
- jdbc немного практиковался в этом, но кажется большее уже начал забывать.
- servlet API, знаю зачем это нужно где используется, но не ковырялся с этим глубже.
- spring core, знаю что это IoC container и зачем это нужно, DI, события и т.д. короче все что связанно с бинами. Подделку на это все писал для практики. Но большего не знаю.
- spring mvc, знаю что это сервлеты со спрингом, чтобы пилить rest api ну или дедовским способом сразу рендерить страничку в ебало пользователя сразу, тут уже плавать пиздец начинаю.
hibernate\jpa знаю для чего это нужно и все, сам еще не касался.
20 1288079
>>288078

> spring core, знаю что это IoC container и зачем это нужно


Зачем?
21 1288082
>>288079
Не нужно? Я поэтому и спрашиваю, потому что тревожникибанный боюсь что делаю не то что нужно для устройства на работу.
22 1288083
>>288082

>что делаю не то что нужно для устройства на работу


Что бы устроится на работу, надо делать то что будешь на этой самой работе делать.
23 1288085
>>288082

>знаю зачем это нужно


ЗАЧЕМ?
24 1288087
>>288083
Откуда он ни дня в жизни не проработав по крайней мере жаба разрабом знает что на этой работе он будет делать?
25 1288088
>>288085
Что бы не пускать вкатывальщиков, сээр.
26 1288091
>>288087
Поэтому он и не устроится. Попал бы на стажировку за еду, может и мог бы продолжить, а так бесполезно. Джунов без опыта не берут. Изучать, что то дома, а потом придя на собеседование узнать, что это не применяется в этой галере, супер фэйл. Поэтому надо как то узнать что требуется на галере конекретно и под нее пилить пет проекты.
27 1288092
>>288091
Джун на то и джун чтобы учиться блять.
29 1288097
>>288092
1-3 опыта приноси, какое учится, слыш роботать.
30 1288098
>>288097

>Требуемый опыт работы: не требуется


>>288094
31 1288100
>>288094
Чо мне твои говноскрины, ты ссылку дай.
33 1288103
Сейчас берут джунов и без опыта на нормальные зарплаты в ДС(до 100к).
Большая нехватка кадров. Нужно хорошо знать Java Core, SQL на уровне запросов, запилить простое CRUD на гитхаб с использованием spring/hibernate. С таким резюме к вам будет интерес. А дальше как пройдете собеседование на знание указанных технологий.
34 1288104
>>288103

>простое CRUD на гитхаб с использованием spring/hibernate.


А jdbc?
35 1288107
>>288101
https://career.ru/vacancy/24197306
Ну раз ты веришь в чудеса, вот еще вакансия, как устроишься отпишись.
36 1288108
>>288101
Алсо в самом профиле компании нету таких вакансий.
37 1288109
>>287973 (OP)
Нужно написать REST-микросервис для обработки JSON. Писать буду на спринг буте. Есть предложение для реста использовать Spark Framework. Мне нравится спарк, но, по-моему, он хорош для компактных приложений с легкими библиотеками. А если использовать жирный спринг, тогда можно реализовать рест и через starter-web. Подскажите, как поступить.

И еще. Как абстрагировать обработку JSON? Создать отдельный JSONService, в котором выполнять весь требуемый процессинг? Формат JSON-пакетов может меняться со временем.
38 1288110
>>288107
Ты ему про аномалии он тебе про хабар, что не так?
39 1288112
>>288110
А то что такие вакансии аномалия, вроде она есть, а туды никого не берут.
40 1288113
>>288104
В крупных компаниях взаимодействие с бд идет через фреймворк. Поэтому требуют его знание. JDBC нужно знать - спросят на собеседовании.
41 1288134
читаю хорстмана(на русском, так как на инглише могу говорить бегло и понимаю, но процесс чтания и понимания бы затупился так смачно), по изучению плюсов знаю что на одном чтении хуй выеду, есть ли какие(годные) сайты с задачами по жабе, codeabbey не понимает что такое scanner(nextint...), и я в слезах от того что проебал охуенный сайт прошу подсказать замену.
42 1288140
>>288134
javarush - платный, кривоватый, но дающий сильную практику.
43 1288158
>>288140
алсо, купил сегодня подписку за 1800, чувство двоякое,
поддерживает мотивацию хоршо, тк я нубас.
С другой стороны чувствую себя ленивым тюленем тк можно было всё из интернета выучить и из книг. =_=
такие дела.

мимикрок
44 1288168
>>288158

>С другой стороны чувствую себя ленивым тюленем тк можно было всё из интернета выучить и из книг. =_=



Это было мое самое сильное бомбилово: я считал, что вот я купил джавараш и там будет все: и теория, и практика, и направление.

Хуй там плавал, читать книги и интернет надо будет практически столько же. Теория в джавараше написано не то чтобы на отъебись, а так, чтобы ты полез разбираться дальше.
45 1288173
https://pastebin.com/DmWHXD3y за каждый найденный баг плачу 200$ нет
46 1288181
Есть один запрос из олимпиадной задачи. Сейчас не важно, как там устроены таблицы. Так вот я что-то совсем не понимаю: в чем смысл сравнения полей айди из одной и той же таблицы в подзапросе (where idCustomer!=O.idCustomer and OrderDetails.idProduct=OD.idProduct )? Это ведь проверка на равенство самому себе, разве нет? Это главное, что я хочу узнать, но если напишете вывод запроса с объяснением, то будет вообще замечательно, а то эта олимпиада с первого же задания в ступор вогнала.

select Count(*)
from OrderDetails as OD inner join [Order] as O
on OD.idOrder=O.id
where SalePrice = all
(
select Price
from OrderDetails inner join [Order]
on OrderDetails.idOrder=[Order].id
where idCustomer!=O.idCustomer and OrderDetails.idProduct=OD.idProduct
)
47 1288185
>>288181
А, блин, как тут можно написать вывод, если я таблицы не привел. Тогда этого я не прошу.
48 1288186
>>288173
Пустой Del падает с numberFormatExeption
49 1288191
>>288186
Как говориться, пофиксил проверочку блять.
50 1288196
>>288186
Пофиксил, ебать.
51 1288206
>>288196
больше ничего нету, у тебя остальные методы ексепшены не бросают, мог быть нул поинтер, но при работе с командной строкой ты получаешь только строки
52 1288209
>>288206
Я потерял всего 200 долларов, круто.
53 1288218
>>288109

> Формат JSON-пакетов может меняться со временем.


Передавай первым полем версию пакета и на ее основании отправляй соответствующему обработчику.
Так ты сможешь корректно обрабатывать запросы в старом и новом формате обеспечивая безболезненный переход старых клиентов на новую версию.
54 1288222
>>288140
оюосрался с этой хуйни, 30 минут посидел и ливнул
55 1288240
>>288222
Ну для начала нормально же че ты сам учился по книжкам, но коллега очень хвалил джава раш за то что помогает втянутся
56 1288242
>>288013
Ммм, сишное приведение типов.

Посоветуйте на чем гуй джавы писать.
57 1288245
>>288242

>сишное


Питонское
58 1288246
>>288245
В питоне вообще-то int(val), str(val) и т.п. А (int)val пошло с си с давних времен.
59 1288254
https://ru.wikibooks.org/wiki/Java/Первое_окно
Первый пример из кода с точки зрении красоты и правильности кода правилен? Это нормально, что ты вызываешь конструктор самого приложения для создания окна. Как по мне надо это выделять в отдельный класс лучше.
60 1288255
пиздец mysql без судо не работает лол я щас повешусь нахуй 2 дня с ним ебусь уже
61 1288256
>>288255
Он должен работать без судо.
62 1288258
>>288256
Ты мне блять рассказываешь?!
63 1288262
>>288255
пользователя не сделал
@
Права не задал
@
бугуртишь
64 1288263
>>288262
Хех
66 1288274
Обожаю двач, как только напишешь сюда о проблеме, сразу допрёшь как её решить.
67 1288275
>>288222
Первоначальная идея, как и первая версия с футурамой были годные, душевные. Потом конечно все трансформировалось в бездушную и жестокую машину по зарабатыванию бабла. Но для для новичка это все равно остается крутым проектом дял прокачки скила.
К слову кто-то еще рекомендовал курс stepik.
68 1288276
>>288274
Ага. А еще круто утром за 5 минут решить то, над чем просидел весь вчерашний день.
69 1288280
Какой вариант лучше:
try {
Object object;
// Действие которое надо проверить
// Работаем с object
}
catch (Exception ex) {
// Ловим ошибку
}
Или
Object object
try {
// Действие которое надо проверить
}
catch (Exception ex) {
// Ловим ошибку
}
// Работаем с Object

В первом варианте будет большой цикл try, а во втором будет глобальная переменная. Что лучше?
70 1288281
>>288264
Что за дистр? Хотел только линукс накатить, вспомнить былое.
71 1288282
Перешел с плюсов на вашу джаву. И знаете что? Это какое то непонятное чувство, код будто сам строчится, мозги не ебутся и не кипят. Как это ахуенно.
73 1288290
>>288282
Главное сразу на питон не прыгай, ахуеешь.
74 1288293
>>288290
Как раз я с питоном и сями в основном и работал. Просто джава это такой компромисс между двумя полярностями.
>>288289
Какое DE?
75 1288298
>>288293
Я после джавы ахуел с типизации когда срочно нужно было на питоне работать, отвык от такой простоты.

>DE


Голая убнту 18.04, там теперь расширения с гнома завезли, вообще кашерно.
76 1288300
>>288298
Окей, прям щас поставлю наверное. Главное чтобы опять загрузчик не полетел во время установки.
77 1288304
>>288300
в 2018 году с этим всем ебли меньше чем с шиндовсом.
78 1288305
>>288304
Если ты погромист, то да. Только вот поиграть нельзя. Поэтому я всегда дуалбут держу.
79 1288308
>>288305

>Если ты погромист


Да там уже давно вся сложность это гугл и контрол + V в терминал

>дуалбут


Я тоже так-то, хотя уже забыл когда на шиндовс возвращался.
80 1288309
>>288308

>Я тоже так-то, хотя уже забыл когда на шиндовс возвращался.


Я недавно обновлялся на kubuntu до версии 18.10 и ахуел с лагов, вылетов, приветов моей мамаше и т.п. Даже терминал вылетать начал. Поэтому подгорел и снес все нахуй.
Теперь вот опять хочу вернуться на линукс, ибо заебно на винде.
81 1288310
>>288309
Ставь голую убунту 18
Снимок экрана от 2018-11-01 19-19-32.png59 Кб, 734x488
82 1288315
>>288289
можешь мне помочь? тоже убунту. я неправильно джава хом поставил или что?
83 1288317
>>288315
Бро, после ебли с mysql я даже на этот скрин смотреть не хочу, давай гугл в руки и дальше сам, сорян.
84 1288318
(Спринг бут) Хочу вынести общие для нескольких микросервисов конфиги в отдельную либу и подключать ее просто как зависимость в помнике, это будет работать просто так, или надо еще как-то попердолиться?
Снимок экрана от 2018-11-01 21-26-58.png320 Кб, 1920x1080
85 1288324
>>288310
Поставил. Как ты темы от гнома прихуячил к этому?
86 1288328
>>288324
https://losst.ru/nastrojka-ubuntu-18-04-posle-ustanovki Тут вроде всё что надо есть.
87 1288329
>>288328
Ок, спасибо.
Потом наверну тайловый менеджер.
sage 88 1288335
Когда уже функции сделают объектами первого рода?
89 1288349
Почему у андройдщиков зп на порядок выше? По сути андройд же проще, чем эта гора фрэймворков и технологий в энтерпрайзе.
90 1288355
>>288315
третий день с этой залупой ебусь, аноны, хелпаните(

или как это гуглить? гугол выдает страницы где у людей ждк не установлен, им говорят установить и все ЗАебись. у меня ждк стоит, но его это штука не видит.
91 1288358
>>288355
пропиши java -version, и покеж.
92 1288363
>>288358
$ java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
93 1288368
>>288363
Блин, дистанционно я хуй что тебе посоветую, попробуй удалить джаву нахуй и заного поставить, я так обычно делаю когда с настройкой чего-нибудь проебусь.
94 1288369
заного блять
95 1288373
>>288368
ладно, попробую. в то же место установить? тут просто в некоторых гайдах ее в usr/bin/jvm ставят, у меня в opt.
спасибо, что откликнулся, няша
96 1288386
>>288113
JDBC хорош когда у тебя база сверхнормализована из-за количества данных.
97 1288391
>>288181
Это не SQL тред, но думаю суть в том чтобы вытащить все цены где неправильно назначен idCustomer, и иного способа это сделать я не вижу. Вообще, очень изящно.
98 1288393
>>288262
PSQL
@
NO SUCH USER
@
PSQL -U POSTGRES -W POSTGRES
@
WRONG PASSWORD
@
SU POSTGRES
@
???
@
PSQL
99 1288396
>>288315
$JAVA_HOME должна вроде как на bin указывать, не?
update-java-alternatives -l
100 1288397
>>288318
--spring.config.location
101 1288399
>>288391
Но ведь idCustomer и O.idCustomer - одно и то же, ведь таблица-то одна с таким полем. И почему тогда оно работает, если айди сравниваются сами с собой, а значит должны быть равны?
102 1288407
>>288349
Потому что ты не знаешь значения "на порядок".
103 1288408
>>288315
>>288355
А мог бы как белый человек поставить sdkman менять jdk как перчатки.
104 1288409
Если у меня в проекте есть бд к которой я подключаюсь, то на гитхаб её нужно заливать? А настройки же у всех разные там, это в ридми указывать что и где?
105 1288417
>>288349
Потому что больше фриланса на щедрых буржуев, рабы бегут
106 1288420
>>288399

>from OrderDetails


Ну не факт, например.
Если все как ты говоришь, подзапрос будет возвращать пустой набор строк, и все это будет ебучим индусским кодом чтобы получить 0.
image.png262 Кб, 478x478
107 1288423
Почему джава тред переделали в тред sql/линукс и установкой ждк которое просто блять решается установкой ждк и жре и вставки их /bin папки как системные переменные.
Лучше скажите как мне в веб-приложении захуярить так, чтобы back-forward страницы не возвращали пользователя обратно на страницу профиля если он совершил logout ? Spring-boot если что.
108 1288424
>>288420
Вот и я про то же. Ноль - неверный ответ (ну или верный, но частично, я хз, там ебанутый интерфейс). Если интересно - олимпиада "я профессионал", вбей в гугле, можешь тоже порешать вот это вот все.
109 1288425
>>288423
Так ведь знание sql для жабера обязательно. Почему бы и не спросить о нем.
110 1288426
>>288425
Для этого есть специальный тред. Вопрос по sql сюда бы зашел, будь это ебля с jdbc/jpa/hibernate или что ты там задумал и почему у тебя не работает. А так ты спрашиваешь про голый sql, что немного не сюда.
111 1288433
>>288423

> как мне в веб-приложении захуярить так, чтобы back-forward страницы не возвращали пользователя обратно на страницу профиля если он совершил logout


Это ещё менее релевантный вопрос в контексте жабы. В браузере никак не сделать, есть метод https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_replaceState()_method но в твоём случае его можно будет применить только для последней страницы непосредственно перед выходом. Впрочем для 99% случаев сойдёт.

Ещё можно для страниц профиля отключать кеш браузера.
112 1288435
>>288423
if (logout) {
return "redirect:...";
}
113 1288436
114 1288437
>>288397
А без этого никак?
115 1288438
>>288433

>метод


Интересно, это хоть что-то.

>отключать кеш браузера


А вот это ведь действительно может сработать, спасибо.

Помнится мне кто-то сказал, что это можно поправить, использую HttpSessions, но я не особо понял как оно
может. Может ты разбираешься? Хотелось бы просто узнать, если это возможно усилиями спринга.

>>288435
Вопрос не в том как редиректнуть и вернуть страницу. Это я и в POST методе могу. А в том, чтобы пользователь не нажал кнопку в верхном левом углу браузера и его не вернуло обратно, когда logout был уже сделан. Я и Spring-Security прописал и поставил в конфиг опцию для logout и прописал то, что нужно авторизоваться, чтобы просматривать профиль, но увы, блядский back всё равно возвращает.
116 1288441
Аноны, поясните на сколько годные книги? Стоит ли брать за 15 баксов?
https://www.humblebundle.com/books/java-by-packt-books?hmb_source=navbar&hmb_medium=product_tile&hmb_campaign=tile_index_4
117 1288443
>>288441

>15 баксов


Я аж ромом поперхнулся.
118 1288444
>>288423
блят. у меня стоит ждк и жре. у меня стоит джава хом на ждк(внутри которого жре). нужно прям две системные переменные их bin папок? как эти переменные назвать? чето я не понимаю как это сделать. попробовал дописать пути к bin'ам в path - не работает.
119 1288447
>>288444
У меня стоит системная переменная и переменная среды JAVA_HOME на саму папку, где находится bin, lib и файлы. Т.е E:\OP-hui\JDK.
И стоит переменная среды JRE_HOME, которая тоже ведёт на саму папку, внутри которой стоит /bin. Покажи как у тебя стоит.
120 1288450
Так пацаны, если я в пик 1 передаю руснявые слова то на выходе получаю вопросики аля пик 2, это проблема именно жабы т.к. в воркбенче я добавляю тоже самое и всё работает, хелп
122 1288454
>>288450
Решил проблему добавлением ?useUnicode=true&characterEncoding=utf8 к url, всем спасибо, ебать.
123 1288457
>>288454
Обращайся.
124 1288459
>>288453
Ну ты особенный у нас конечно. Так а чего ты в консоли клац-клац и готово? У вас ведь линукс за вас всё сам делает!!111 А если серьёзно, то мб нужно в разные папки или тупо снеси всё и переустанови. Попробуй из какой-то IDE посмотреть если она находит, Intellij тебе вроде даже сам установить может и сделать за тебя.
125 1288461
>>288437
Дока не говорит о других способах конфигов в спринге. Ну можешь создать нахуй никому не нужный бин, инжектить в него контекст и назначать, но тогда для каждой смены конфига нужна будет перекомпиляция, что в прод-условиях подобно сосанию хуя когда рядом лежит только что заправленная баблом шлюха.
126 1288463
>>288437
>>288461
А, ещё альтернатива - spring cloud config, гайд можешь искать где-то здесь g00glen00b.be
127 1288468
Есть способ вытащить из бд mysql все idшники в массив интов JDBC ебаный?
image.png14 Кб, 332x168
128 1288473
>>288468
Бля, никто не знает? Или всем поебать? Я просто додумался только до пикрил, мне кажется не лучший вариант.
129 1288483
>>288473
Если таблица не очень большая, то это хороший вариант.
Если большая, то надо делать sort by id + limit , а потом новый селект с where id > n
сраный mysql, чтоб ты сдох!!!111
130 1288484
>>288483
Таки да, таблица не большая, слава богу блять.
sage 131 1288486
Джаваны, помогите зелени. Не находит драйвер для mysql. Пик 1 - зависимость в мавене, 2 - получение соединения, 3 - эксепшн. В чем, собственно, проблема?
132 1288487
>>288486
сажа прилипла
133 1288490
>>288486
Гугл в помощь брат, гугл в помощь, тут тебе не помогут.
134 1288500
>>288264
Бля, только недавно с этой хернёй ебался, там какую-то ебату с юзерами сделали, можно вообще написать sudo mysql и он откроет всё. Не нашёл как исправить просто откатился на семнадцатую. Если найдёшь или нашёл решение, то отпиши, пожалуйста.
135 1288501
>>288463
Это не то, в клауд конфиге просто проперти, а мне нужен именно класс с аннотацией @Configuration.
136 1288503
>>288500
Решение я нашёл, но я уже не вспомню на каком сайте, а история у меня забита говном на эту тему, хз откуда я взял, сорян(
137 1288514
https://pastebin.com/93T1qkTj Если не считать бд, запихал всё в 1 файл, пиздец конечно.
138 1288523
>>288486
А ты где то этот драйвер прописал, чтоб его получать то блядь? На кури код и не задавай больше тупых вопросов, у тебя в логах уже инфы выше крыши
139 1288524
>>288501
>>288318
@Configuration это не конфиги, блджад, а ручное создание бинов. Да, ты можешь это сделать без ебли, только отдельную библиотеку собирай без spring-boot-plugin.
140 1288526
>>288486
>>288523
Удваиваю вот этого вот. В Pure Java нужно драйвер подтягивать по имени класса.
141 1288581
>>288526
>>288523
Если вы про Class.forName, то херня это все. Если бы дело было в этом, кинулся бы ClassNotFoundException, а у него SqlException.
142 1288585
>>288473

> while true + break


> Использует исключения для реализации алгоритма

143 1288586
>>288486
Мне кажется, ты базу данных не прописал в url, к которой подключаешься.
image.png253 Кб, 645x729
144 1288609
>>288585

>Я просто додумался только до пикрил, мне кажется не лучший вариант.

145 1288615
>>288318
Будет работать. Это же и есть те самые spring-boot-pizda-huita-starter-ы.
146 1288617
>>288483

>Если большая, то надо делать sort by id + limit , а потом новый селект с where id > n


Мы вам перезвоним.

>>288468
К У Р С О Р
У
Р
С
О
Р
147 1288619
>>288617

>К У Р С О Р


Ты же понимаешь что это мне нихуя не говорит, мне даже гугл нихуя об этом не говорит.
148 1288626
>>288609
У ResultSet же есть метод hasNext().
while (result.hasNext()) {
ids.add(result.getInt("id"))
}
image.png2 Кб, 182x19
149 1288629
>>288626
Точно есть?
150 1288639
>>288629
А, нет. Просто делается while (result.next()). Давно с JDBC не работал уже.
image.png38 Кб, 550x275
151 1288640
>>288639
Да я уже понял.

Ну всем спасибо кароч, переделал на пикрил, сейчас остальные исключения буду фиксить.
image.png23 Кб, 575x144
152 1288641
А вот пикрил например убирать не стоит? Тут же подразумевается что юзер введёт номер который есть в бд, а если его нет то собсна ловим исключением ебать.
153 1288649
Хммм, а у меня больше и нет такого использования исключений. Единичный случай был так сказать.
155 1288676
>>288641
Зачем исключение? Проверяй что rs.next() вернуло false - тогда ничего не нашлось.
156 1288704
>>288641

>prstmt


>con


Ты что, буквы экономишь? Почему нельзя нормально назвать переменную?
157 1288706
>>288676
Так?
>>288704
Просто копировал из гайда и было лень переименовывать, таки да, надо исправить.
158 1288733
>>288581
Еще один мамкин пограмист, которому впадлу логи почитать
159 1288735
>>288640
Зачем тебе два запроса, если можно один?
160 1288736
>>288735
Какой?
161 1288740
>>288736
Эй, дружок-пирожок, тобой выбрана неправильная дверь. Клуб 1с-ников на два блока вниз. Хоть бы почитал немного теории по sql что ли.
162 1288741
>>288740

>Пук


Окей.
163 1288744
>>288741
О, Вы из /b? Мое увожение. Сренькать гринтекстом это вам не книжки читать.
image.png22 Кб, 466x182
164 1288747
>>288744
Лана лана, ты прав.
165 1288748
>>288747
arraylist удолить зобыл((99(
166 1288807
>>288747
Если на спринге пишешь то легче создать класс таблицы загрузить его и как то вот так написать:
taskRepo.findAll().stream().map(Task::getId).collect(Collectors.toList())
и все
167 1288808
168 1288809
>>288808
соре
169 1288845
Что это значит пасаны?
170 1288847
>>288845
В команде неправильно указал, написал
mvn exec:java -Dexec.mainClass="com.app.ToDo"
вместо
mvn exec:java -Dexec.mainClass="ToDo"
image.png116 Кб, 784x397
171 1288905
пиздец как javafx к maven подключить что это вообще значит?
172 1288911
>>288905
Проблема снова решена.
>>288905
>>288845
Спасибо за помощь ребят.
173 1288917
Какой же в Джаве выблядский синтаксис после Питона. Как учить это говно?
174 1288919
>>288917
Не учи, зачем страдать?
175 1288921
>>288615
>>288524
Будет работать, только если @ComponentScan его видит, либо через @Import.
176 1288922
>>288919
На работе сказали. Дежурное нытье, один хуй буду учить.
177 1288923
>>288917

>после Питона


Ебобо? Иди ямлы ковыряй.
178 1288924
Почему, кстати, мавен еще не поддерживает конфигурацию через pom.yml?
image.png238 Кб, 521x514
179 1288926
НАПИСАЛ int("ЖОПА")
@
ОБОСРАЛСЯ
180 1288945
Прикручивать gui кароче будет наверное пустой тратой времени, в пизду так сказатб.
181 1288946
>>288945
Если делаешь на JavaFx, то да, на Qt можешь попердолиться.
182 1288951
А теперь другой вопрос, как залить эту парашу на гитхаб, тут же бд.
183 1288954
>>288923
че несет? переведите плиз))
184 1288957
>>288951
Sql script приложи
image.png12 Кб, 519x107
185 1288963
>>288957
Текстовый файлик с пикрил?
186 1288981
>>288963
Ага
187 1288990
Сап жавач, хочу запилить библиоткеку которая превращает все слова в строке по типу "рифма" -> "хуифма" на паре десятков языков. Посоветуйте как ее архитектурно спланировать?
188 1288995
>>288990
Библиотеку? Тут же одного метода хватит. Но идея классная.
189 1288996
>>288990
Такое уже есть.
190 1289007
>>288963
Или типа есть такая хуйня чтобы 2 раза на неё кликнул и скрипт тупа сам выполнился?
191 1289011
wojak.jpg5 Кб, 205x246
Снова выхожу на связь 192 1289019
float floatingsecondTerm = capital / firstTerm;
int secondTerm = Math.ceil(floatingsecondTerm);
long composition = firstTerm * secondTerm;
int kopeck = composition % 100;

Жава ругается на вторую и четвёртую строку, якобы possible missy, но на деле же нихуя не потеряется. Как её переубедить?
193 1289034
>>289019
Пропустил вторую строку сначала через Math.round и привелось к лонгу, окей, хотя и убого как-то.
Остался вопрос по поводу копеек
194 1289039
>>289019
>>289034
Лонг может быть больше инта в 9,223,372,036,854,775,808 / 2,147,483,648 миллиарды раз, блядь. По-твоему остаток от деления на сто гарантированно влезет в инт? А про простые числа ты блядь слышал?
195 1289040
>>289039
Подели целое на сто так, чтобы остаток был больше ста, ебанько
196 1289042
>>289040

>Среньк

197 1289044
198 1289045
double floatingSecondTerm = doubleCapital / doubleFirstTerm;
long secondTerm = Math.round(Math.ceil(floatingSecondTerm));
long composition = firstTerm * secondTerm;
long kopeck = composition % 100;

Тем временем я пошёл по ШИРОКОЙ дорожке и копейки у меня теперь представлены лонгом. Пиздец-пиздец
199 1289047
>>289045
А нахуя это, если есть BigInteger или еще че-то такое?
200 1289050
>>289047
BigDecimal
201 1289058
>>289047
У меня двухзначный айсикью, поэтому я страдаю хуйнёй
202 1289228
>>287973 (OP)
Как призвать модератора в тред чтоб добавил тег в заголовок треба? ОП-хуй же не проставил нихуя.
203 1289229
Ты заебал срать в тред уёбок. Почему ты не можешь элементарно загуглить свой блядский вопрос?
204 1289230
>>289228
*Треда
205 1289711
https://pastebin.com/UzCUaAuJ
В методе сначала проверяется условие @PreAuthorize, т.е. даже если юзер с запрашиваемым id не существует, возвращается 403. Как сделать, чтобы сначала проверялось наличие юзера (и выбрасывалось 404 исключение, если он не существует) и только потом проверялось условие в @PreAuthorize? В моем понимании надо заменить @PreAuthorize на @PostAuthorize и откатывать транзакцию при фейле (т.е. после выполнения метода). Вопрос как сделать, чтобы чек авторизации был внутри транзакции и она откатывалась при AccessDeniedException? Или может есть другой способ?
206 1289716
У кого тут в секту записаться можно?
207 1289718
>>289716
Ccыль на пост можно?
209 1289724
>>289720
Ну ты траль, конечно, ссылку скриншотом кидать.
# OP 210 1289743
>>289720
Настолько тупо что смешно
211 1289744
Семен семеныч, вы?
212 1289771
>>289744
Не, рил улыбнуло
Я хотел сказать сори, что тег не проставил, потом передумал, а галку убрать забыл, кек.
Соре за тег
213 1289863
Чёт совсем затуп, дайте поцаны идею для портфолио на гитхабе, ну так, тупа для кандидата на джуна, для лоха тупа.
214 1289930
>>287979
Классический сярп люто отсасывает по перфомансу. Особенно это заметно по веб-фреймворкам: у джавовских rps в тысячи раз больше. Речь, разумеется, не про кор: он пиздат и примерно на одном уровне с джавой.
Самое основное превосходство в том, что на жаве гораздо больше написано. Больше либок, больше фреймворков, больше примеров кода. Даже есть кроссплатформенные окошки, если угодно.
Ну и вакансий почти в полтора раза больше.
sage 215 1289932
>>289930
Вот это манямирок. Особенно с перфоманса орнул. Джава это один из самых тормознутых языков, хуже наверно только Питон.
216 1289936
>>289932
Лет 6 назад так же думал когда в олимпиадах участвовал и там на джаву были особенные инвалидные условия по времени.
Сейчас уже все совсем не так, вот тут вроде чувак очень подробно все описал https://stackoverflow.com/questions/2163411/is-java-really-slow ща бы ссылками на стековерфлоу кидаться, как пруфами
218 1289984
>>289937
Что-то мне подсказывает, что твоя иерархия классов - дичайший говнокод. Это было трудно читать, непонятно, зачем пихать столько классов.
219 1289989
>>289984
Ты чё, ньюфаг? Это же джава, у нас тут вообще-то принято на каждый пук писать класс. Чем больше классов, тем больше ты сеньор.
220 1289991
>>289989
Ты абсолютно прав, 1 пук = 1 класс, но ты забыл, что сеньерность это ещё умение классифицировать пуки по пекейджам, а в этом коде их нет а вообще да, очень сложно читается
221 1289997
>>289991
>>289989
>>289984
Я написал это за час на вписке, лол
1) Ок, сокращу до 1 интерфейса и реализации.
2) Прикручу к проекту junit и вынесу в тесты пример использования.
3) Обозначу EmptyStringException extends RuntimeException и буду использовать его
Норм?
222 1290009
>>289997
Веселые вписки у вас, завидую.
223 1290023
>>290009
>>289997
Фикс в процессе: https://github.com/wolches/huilib/commit/0eb730c9996fa567037484ec05a53b9f8b4f19bc

1) Нахуй свой эксепшон, нпе вполне сойдет
2) Если пустая строка нихуя не делаем
3) Впихнул все в интерфейс + класс
4) Стоит ли учитывать иные символы кроме пробелов?
image.png7 Кб, 606x66
224 1290226
Нормально ли, что у меня в коде куча мап вида <A.class, Что-то связанное с А.class>? Пример на пикче.
225 1290235
>>290226
Ты что-то гуйное пишешь? У меня в C# была куча подобных мап для кеширования объектов, которые описываются атрибутами и получаются при помощи рефлексии в рантайме.
wojak.jpg5 Кб, 205x246
Доллар доллар доллар 226 1290253
public void exec() {
BufferedReader reader = null;
try {
URL site = new URL("http://www.cbr.ru/");
reader = new BufferedReader(new InputStreamReader(site.openStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
} catch (IOException ex) {
//...
} finally {
try {
reader.close();
} catch (IOException ex) {
//...
}
}
}
Спиздил вот такой кроулер, он мне через принтлн выдаёт кучу всякой хуйни внутри тэгов. Как её пропарсить и вытащить курс доллара на сегодня? JDOM скачал, а что делать с ним не знаю.
227 1290264
229 1290319
Анон, подскажи буржуйских ресурсов с качеством статей хотя бы не ниже хабра.
230 1290349
>>290253

>Спиздил вот такой кроулер


Сука чаем подавился. Бычки из параши не пиздишь, случаем?
231 1290365
>>287995
Тёма, ты?
232 1290487
>>290349
Ну по сравнению с jsoup это и было бычками с параши, но ладно
233 1290503
В самой БД могу искать Cyrillic символы, а когда запрашиваю с сервера запрос на удаленную эту БД, то он мне не находит. Хотя спокойно находит англ + цифры.

Пытался менять кодировку самой БД на cp1252 - он искал, но в этой БД и в ответах отображались символы как ?????? ????? ?????.

Куда копать-то?
sage 234 1290512
>>290503
Тут экстрасенсов нет. Какая СУБД, как ты к ней подключаешься, как делаешь запросы?
235 1290514
>>290512

>Какая СУБД


MySQL

>как ты к ней подключаешься


через jdbc

>как делаешь запросы?


SELECT * FROM personal WHERE NAME LIKE N'%Мих%' COLLATE utf8_general_ci
236 1290532
>>290514
Трабла решилась с добавлением строчки characterEncoding=UTF-8 при подключении.
237 1290533
Скиньте доки или книжки для подготовки к собеседованию на синьора. Чтобы не позднее 2016-2017 года выпуска.
238 1290534
>>290533

>не позднее


не ранее

fix
239 1290540
>>290533
Готовился по SICP, прошло гладко, теперь я сеньор.
240 1290544
>>290533

>для подготовки к собеседованию на синьора.


Походил по барам случайно один раз, меня сразу с джуна до синьора помидора повысили. Рабочий метод, советую. Сейчас сижу на работе пишу одну строчку за восемь часов, а в остальное время пизжу в курилке.
241 1290549
>>290532
Пиздец, это же на первой странице гугла, ну ты и пидор.
242 1290591
Сейчас пишут на чистом JavaEE или уже везде Spring? Правильно ли, что на JavaEE для каждого запроса клиента свой сервлет?
243 1290592
>>290591

>на чистом JavaEE


Не пишут, только легаси-говно.
244 1290696
>>290592
Подтверждаю. Хоть Оракл и пыжится изо всех сил, но лошадь уже очевидно сдохла. Писать веб-приложение на связке JSF-EJB-JAX-RS в 2018 будет только ебанат.
245 1290699
>>290696

> Хоть Оракл и пыжится изо всех сил


Под "пыжится" ты подразумеваешь "удалил из jdk и отдал сообществу"? По мне так наоборот выглядит как похороны.
246 1290707
>>290699
В jdk её, тащемта, и не было. JDK это Java SE + JavaFX (до недавних пор).
А слив Java EE в Apache и правда больше похож на похороны, тут ты прав. Хотя всего год-два назад Оракл бил себя пяткой в грудь, поясняя про неебические перспективы развития. Где-то статья на Хабре была, лень искать.
247 1290709
>>290696
А чем плох EJB? По мне так вполне норм.
248 1290713
>>290707

> В jdk её, тащемта, и не было. JDK это Java SE + JavaFX (до недавних пор).


Тащем-та в Java SE была своя собственная часть EE начиная с шестой жавы. Вот тут написано подробней: http://openjdk.java.net/jeps/320

> Java SE 6 included a full Web Services stack for the convenience of Java developers. The stack consisted of four technologies that were originally developed for the Java EE Platform: JAX-WS (Java API for XML-Based Web Services), JAXB (Java Architecture for XML Binding), JAF (the JavaBeans Activation Framework), and Common Annotations. At the time of inclusion, the versions in Java SE were identical to the versions in Java EE, except for Java SE dropping a package in Common Annotations that concerned the Java EE security model. However, over time, the versions in Java EE evolved, which led to difficulties for the versions in Java SE.



> А слив Java EE в Apache


Только не Apache, а Eclipse.
249 1290719
>>290709
Тем, что EJB сам по себе практически бесполезен. Написание бизнес-логики на энтерпрайз-бинах вынуждает тебя все остальные слои твоего убер-приложения также ебашить на Java EE библиотеках.

Хочешь веб-морду? Вот тебе JSF. А всякие Bootstrap и Angular засунь себе в жопу, никакого открытого API у бинов нету.

Работа с базой? Онли JPA, хотя в этом случае всё ещё вполне неплохо. Но Spring DAO всё равно пизже будет.

Хочешь взаимодействия с другими приложениями? Если синхронно, то только JAX-RS (или -WS, хотя про SOAP уже почти все забыли, и поделом), если асинхронно, то только JMS, причём в качестве брокера ты можешь использовать только тот сервер, на котором вертится и EJB-контейнер, про легковесные ActiveMQ забудь (если, конечно, твой сервер не TomEE).

Их тяжело отлаживать, сам процесс постоянного деплоя и разворачивания на монструозном сервере с конфигурированием в xml после Spring MVC выглядит каким-то дикарством, тем более, что на горячую этого и не сделаешь (хоть поставщики серверов и пиздят про такую возможность, на деле там дохуя нюансов, в итоге всё равно приходится перестартовывать сервак целиком).

А с появлением божественного Spring Boot концепция веб-приложений в корне поменялась. Теперь не приложение вертится внутри сервака, теперь сервак подтягивается внутрь приложения просто как зависимость, избавляя тебя от ебли с настройкой JNDI-ресурсов (брррр...), и тем более ручной маршрутизации и распределения нагрузки. Всё это теперь делается парой аннотаций и десятком строчек в application.yml.

Всему этому Java EE ничего противопоставить не смог.
250 1290726
>>290713
Да, точно, в Eclipse. В Apache был слит NetBeans.

А вот что будет с GlassFish, вообще не ясно. Надуюсь, что Payara не даст ему умереть.

Такое же туманное будущее у WildFly после поглощения IBMом RedHat. У IBM есть WebSphere, ещё один сервак им нахуй не упал.
251 1290734
>>290719
ты скозал ?
252 1290736
>>290734
Подтверждаю, он сказал.
253 1290775
Перенес в отдельную либу @Configuration для некоторых бинов, а вместе с ним парочку @Component и @Service. Теперь у меня есть аннотация, с помощью которой этот конфиг подключается к приложению на спрингбуте. В аннотации есть @Import(FooConfig.class), а в конфиге такие же импорты всех компонентов и сервисов. Это норм или я какую-то хуиту горожу?
254 1290780
бля, чот не модно тут у вас. нахуя я вообще вюда зашел...
255 1290783
>>290780
А, это ты тот мелкобуква, который доебывался до мелочей из-за того, что ему скучно? Как говорится, узнал тебя по твоим шизоидным высерам. А теперь пiшов нахуй, как говорится.
256 1290797
>>290783

>это ты


нет

>узнал тебя


нет не узнал

>пiшов нахуй


нет ты
257 1290882
>>290719
Ох и удваиваю этого мудреца.
258 1290895
Знающий Анон поясни по JPA.
Например есть связь manytomay.
Как сделать лучше и ПОЧЕМУ:
1. получить коллекцию объектов нужной стороны. Достать из них через форич через геттер каждого объекта нужную колумн(поле объекта).
2. Написать запрос @Query, который будет возвращать уже нужные поля объектов и возвращать коллекцию.

Первый способ через джаву, второй через ДБ. Что быстрее выполниться? Лучше грузить ДБ запросами или сервак логикой?
image.png724 Кб, 600x600
259 1290922
>>290895

>Лучше грузить ДБ запросами или сервак логикой?

260 1290949
>>290895
Лучше грузить бд хранимками.
рап.PNG50 Кб, 986x693
261 1291044
>>290264
Но зачем? Если это можно сделать рекегсами без каких либо дополнительных либ.
sage 262 1291081
>>291044
Парсинг HTML регэкспами — грубейший анти-паттерн, который наказывается немедленным расстрелом на месте!
263 1291091
>>291081
Почему?
265 1291097
>>290719

>в качестве брокера ты можешь использовать только тот сервер, на котором вертится и EJB-контейнер


Почему это?
266 1291106
>>291093
Неплохо его накрыло. Но, как я могу заметить, кроме его нытья насчет нечитабельности такого парсинга, никаких аргументов против этого нет. Так что почему бы и не парсить так, если уж хочется.
267 1291112
>>291097
Если ты message-driven бины используешь, как они в этом случае должны очередь сообщений прослушивать, крутясь в EJB-контейнере? Реализация EJB эту магию скрывает внутри себя: ты создаёшь на сервере JMS Queue, и его же указываешь в @MessageDriven аннотации бина. Можно ли в нём внешнюю очередь указать? В стандартном EJB нет пруфани, если я неправ.

Возможно, в каких-то реализациях такую возможность и добавили, но это уже по-любому специфичное для конкретного сервера расширение стандарта, то есть если вдруг тебе по каким-то причинам пришлось пересесть на другой сервак, есть шанс лососнуть тунца.
268 1291130
>>291112
Напрямую в @MessageDriven-бине в конфигурации указать адрес, где крутится брокер, либо в настройках контейнера прописать.
269 1291143
>>291130
Бля, братан, если не влом, запили хеллоуворд. Рили интересно.
5 принципов SOLID SOLID 270 1291147
Сап, двач. Поясните за 5 принципов SOLID. Нужно по два примера(хорошего и плохого) использования принципа. До лекции осталось 15 мин, мужское гей-братство, помогите!..
271 1291159
>>291147
Ты препод что ли? Кек
272 1291184
>>291159
Лол. А ведь и правда может быть препод.
273 1291185
>>291147
Пфф, просто говоришь "читайте методичку" и все. Зачем напрягаться?
274 1291186
Если метод фейлиться, стоит возварщать эксепшен или нулл?
Например метод должен возвращать объект || или булевое значение в случае, если такой объект не существует.
275 1291187
>>291185
Рака яичек тебе
Хотя это все же лучше, чем диктовать методичку
276 1291189
>>291186
Имхо, а я нубас
Зависит от задачи. Исключения нужны, когда программа дальше не может полноценно работать. Если нулл не сломает твою прогу - возвращай его
277 1291192
>>291189
Может быть есть какой то шаблон или бест практис. Каштомых экспшенов на все случае жизни накатать и кидать их из рантайма. Хуй знает кароч.
278 1291197
>>291192
Можешь попробовать заворачивать в Optional.
279 1291198
>>291192

>Каштомых эксепшонов


Такое тоже практикуется. А вообще даже в каркасе коллекций есть методы типа remove() и poll() . Один кидает эксепшн, другой - возвращает нулл, если список пуст. Так что и впрямь от задачи зависит.
280 1291199
>>291187
Не, ну а чо. Как будто на лекции дают то, чего нет в методичке. Хз, зачем вообще их посещать, если можно самому все изучить быстрее. Хотя может у вас в шараге и впрямь есть смысл ходить на лекции, не знаю.
281 1291203
>>291199
Лучше походить на эти ёбаные лекции, чем потом в ужасе переписывать конспекты перед сессией.
282 1291209
>>291203
М е т о д и ч к а. Смысл переписывать конспекты, если их не проверяют (не проверяют ведь?), а все необходимое для подготовки уже написано за тебя в методичке?
283 1291210
>>291197
Проверка на нулл в Optional нужна только для стримов
284 1291214
>>291209

>не проверяют ведь?


Оо, еще как проверяют, а после проверки дырявят гвоздём. Без полного конспекта недопуск и ебись как хочешь. Как говориться, не можешь — научим, не хочешь — заставим. Конеш, не по всем предметам так, но по многим.
285 1291229
>>291199
Смотря какая методичка. У нас жутко формализованные, просто пиздец, как будто лицензионное соглашение читаешь. А препод может на простом языке объяснить эту же тему и сказать, что в методичке суть, а что - вода для презентабельности/просто для галочки. Кроме того можно сразу вопрос задать, если не всек что-то, преподы, если сами понимают тему, обычно с удовольствием отвечают на вопросы
286 1291236
>>291214
>>291229
Похоже, что в моей шараге просто рай, раз ничего такого нет, либо в минимальном объеме. Оценивают знания на самом экзамене, а не ебут конспектами, ибо какая разница, как ты получаешь знания, если в итоге они у тебя есть? Не понимаю этого подхода с механическим переписыванием лекций.
287 1291257
>>291186

> Если метод фейлиться, стоит возварщать эксепшен или нулл?


Видел очень хорошую речь на конференции по C++ по этому поводу. null как и optional плохи тем, что ты не знаешь почему зафейлился твой метод. В жаве null ещё и плох тем, что он никак не выделяется, поскольку все ссылочные типы могут быть null и зачастую это не является ошибкой.

Можно, конечно, возвращать самодельный discriminated union (который в жаве можно имитировать несколькими классами с наследованием), который будет хранить и ошибку и результат, но сомневаюсь что это будет быстрее эксепшонов. Благо VM эксепшоны очень хорошо оптимизирует.

> в случае, если такой объект не существует.


В таком случае optional идеален. В конце концов тут ведь ошибки нет, ты просто указываешь, что объект не найден. null плохо использовать потому, что объект может быть найден и равен null.

>>291192

> Каштомых экспшенов


Я такое пишу только если эксепшон кидается самому пользователю API. В противном случае (если эксепшон ловится внутри самой программы и никак пользователю не виден) в 90% случаев хватает IllegalStateException (если программа находится в таком состоянии, что выполнить метод невозможно) и IllegalArgumentException (если переданный аргумент имеет неправильно значение). При конструировании передаю message, который затем логгируется.
288 1291290
>>291257
Спасибо. Наверно остановлюсь на эксепшенах. К этому и склонялся.
Потому что да, если метод вернул нуль ну блять ну нуль и нуль хуй его знает почему.
289 1291381
Ебучий MySQL, как же горит с него. Почему нельзя было добавить чертов EXCEPT в свою реализацию? Нахуя все оставлять на гребаные джойны? Сижу ебусь теперь с этим, ведь в моем случае костыли на джойнах не помогают.
290 1291438
>>291186
Иногда используют оба этих подхода, даже в одном методе.
Например InputStream.read() - возвращает -1 если дошли до конца потока и бросает IOexception. Просто это семантически разные вещи.

Конец потока это ожидаемое состояние, все потоки рано или поздно закончатся. IOexception это исключительная ситуация - в идеальном мире ее быть не должно.

Применительно к твоему случаю - поиск может не найти объект - это штатная ситуация (как правило). Поискать не удалось по каким-то причинам - это нештатная ситуация.
291 1291523
>>291257

>но сомневаюсь что это будет быстрее эксепшонов.



При чём тут скорость вообще?
Ты про ФП слышал когда-нибудь?
Понимаешь, зачем такое делают?
292 1291531
>>291523
Тому що это разные подходы для того чтобы сделать одно и то же. Но в жаве уже есть эксепшоны, а значит для того чтобы использовать тип-сумму (да ещё и написанную с использованием ООП-костылей) должны быть какие-нибудь преимущества у него. Вот например в C++ хотят ввести expected, потому что он может быть быстрее выброса эксепшонов. В жаве такого не будет, поскольку VM эксепшоны неплохо оптимизирует.
293 1291551
>>287973 (OP)
Балуюсь тут с джавой и вот на что наткнулся:

https://ideone.com/RJNQr6
Если у переменной num тип int, то она может принять верхнее значение диапазона в 2147483647.
Если поставить тип Integer, то вылезает ошибка.

Я не понимаю этого! Ведь Integer- это просто обертка для примитивного типа!
Какой у неё тогда вообще диапазон?
294 1291552
>>291551

> Если поставить тип Integer, то вылезает ошибка.


УМВР. Что за ошибка?
295 1291553
>>291552
Лол, исчезла.
Но так, на будущее: я правильно понимаю, что у классов-оберток ровно тот же самый диапазон, что и у примитивов?

Алсо, а как элегантно можно решить вопрос ввода числа, чтобы пользователь мог ввести число любой длинны?
Или это вообще невозможно, и мой максимум - это long ?
296 1291556
>>291553

> Алсо, а как элегантно можно решить вопрос ввода числа, чтобы пользователь мог ввести число любой длинны?


Если совсем любой, то BigInteger (если целое) или BigDecimal (если дробное), но операции с ними будут медленней чем со стандартными int, long, double, float. Вот например твой код с BigInteger: https://ideone.com/N4DdGK
297 1291557
>>291553

>я правильно понимаю, что у классов-оберток ровно тот же самый диапазон, что и у примитивов


Да. Integer.MAX_VALUE и Integer.MIN_VALUE в помощь.

>как элегантно можно решить вопрос ввода числа, чтобы пользователь мог ввести число любой длинны?


BigInteger, BigDecimal

А вообще кончай байтодрочить, жаба предназначенная для ловли асинхронных колбеков через рекурсию в бинах.
298 1291559
>>291557

> через рекурсию в бинах


> рекурсию


Но зачем нужна рекурсия, если есть божественные императивные циклы? Фу, со своей функциональщиной всю жавку портите.
299 1291560
>>291557

>А вообще кончай байтодрочить


Я ещё учусь и вряд ли сейчас напишу что-то, не вызывающее слабительный эффект.
300 1291561
>>291560

> Я ещё учусь и вряд ли сейчас напишу что-то, не вызывающее слабительный эффект.


Так это наоборот самый крутой скилл. Осталось подучить шпринг и можно вкатываться в ынтерпрайз.
301 1291564
>>291561
Хм. А есть где-нить инфа, какой проект можно самостоятельно запилить, чтоб в резюме годно смотрелся?
302 1291568
>>291564
Я сейчас с шарагр домой приду дам тебе проект который сам делаю, там веб приложуха.
303 1291571
>>291568
Буду признателен!
304 1291596
Анон, подскажи, а как лучше "переворачивать" числа?
Через трансформацию в строку или через измерение длинны? Или тупо, циклом, пока не закончится?
305 1291607
>>291596
Вот так легче всего:
public int reverse(int num){
return Integer.parseInt(new StringBuilder(num+"").reverse().toString());
}
306 1291609
>>291607
У меня BigInteger.
307 1291617
>>291609

>BigInteger


public BigInteger reverse(BigInteger num){
return new BigInteger(new StringBuilder(num+"").reverse().toString());
}
308 1291631
>>291617
А у меня Long
309 1291636
>>291617
А у меня Short
310 1291638
>>291617
А у меня Double
311 1291640
>>291617
А у меня Char
312 1291705
я покакал
313 1291711
>>291130
А это стандартное поведение для всех EJB-контейнеров? Да нихуя!

Маппинг JNDI-ресурсов по факту в каждом сервере свой, и все реализации нихуя не совместимы между собой, так что привязавшись к какому-нибудь WildFly, ты уже от него никуда не денешься.
314 1291742
>>291631
>>291636
>>291638
>>291640
>>291705
Наглядная эволюция джава программиста.
315 1291845
Можете привести наглядный пример использования хешмапа против списка? Я как-то за все время говнокодинга на уровне 1 класса так ни разу и не попал на необходимость использования первого.
316 1291849
>>291845
Например, есть у тебя список пользователей. У каждого уникальный логин, по которому тебе нужно осуществлять поиск. Вот и будет у тебя HashMap<String, User>.
sage 317 1291852
>>291849
Для такой хуйни нужно уже бд подключать, хотя если это какой-нибудь чатик то да, можно.
318 1291879
>>291845

>наглядный пример использования хешмапа против списка?


Вот недавно нужно было определить наиболее часто встречающийся объект в коллекции. Попробуй реализовать такой алгоритм на списках, а потом на хэшмап, почувствуешь разницу.
319 1291881
>>291879
Только в твоём случае не хэшмап нужен,а хэшсет (хотя он зачастую делается на основе хэшмапа).
320 1291884
>>291881
Хотя не, вру. Можно использовать Map<T, int>.

А вообще хэшмапы используются в качестве кэша. Хотя что смешно, если элементов меньше 10-15 зачастую лист оказывается быстрее, поскольку перебор занимает меньше времени чем хэширование.
321 1291890
>>291879
Что мне мешает контейнс для листа применить? В чем хешмап проще?
>>291879
Можешь по хешмапу примерный алгоритм накидать, в листе я понимаю как сделать, как именно методы хешмапа использовать отлично от логики реализации в листе - не знаю с ходу.
322 1291906
>>291890

>Что мне мешает контейнс для листа применить


Почитай, как устроены разные коллекции, интересная тема. В хэш-мапе используется хэширование, что позволяет проверять равенство объектов, сравнивая числа, а не через жирный equals(), как в случае с методом contains() списка.
323 1291909
>>291890
Хэшмап быстрее при большом количестве элементов в коллекции (когда хэширование становится быстрее чем перебор). Хотя например для строк есть ещё более быстрые коллекции, например, trie.
324 1291911
>>291909
Википедия говорит, что в trie можно получить максимум O(n). Хэш-мап же дает максимально O(1). Почему дерево быстрее?
325 1291912
>>291911
Потому что O(1) - это только поиск, сам алгоритм хэширования займёт O(n), где n - длина строки, что аналогично O(n) в trie.
326 1291915
>>291911
И да, там не O(1), а O(k), где k зависит от количества bucket'ов, которые в свою очередь зависят от количества элементов (хотя зависит от того каким образом был сделан hash-map, например в мультипоточных хэш-мапах bucket'ы имеют меньший размер чтобы меньше блокировать элементов при записи, однако получение элемента становится чуть медленней).
327 1291922
>>291915
Знаешь какой-нибудь ресурс, где обо всем этом написано? А то не охота весь интернет обыскивать, собирая по крупицам.
328 1291928
>>291922
Да там ничего сложного нет. Представь List, где хранятся пары хэш->значение. При попытке получения элемента ты высчитываешь хэш ключа, перебираешь List сверяя все хэши, если найдено получаешь значение, которое представляет из себя LinkedList со всеми данными, у которых одинаковый хэш. После чего проходишь по этому LinkedList уже сверяя сам ключ и оттуда выбираешь совпавший элемент. Это самый простой вариант. Если куча оптимизаций, где например вместо LinkedList используется дерево или вместо массива с хэшами используются другие коллекции, но суть остаётся такой же.
329 1291929
>>291890

>Можешь по хешмапу примерный алгоритм накидать


Лови -> https://ideone.com/RBPcqr
ток ногами не бейте, лучше обоссыте
330 1291932
>>291929
Там в hashmap'е есть специальные методы для упрощения подобных вычислений. https://ideone.com/PFNumK
sage 331 1291933
http://java-master.com/spring-mvs-настройка-без-xml-web-xml/ такой вариант вообще норм?
332 1291939
>>291928
У тебя детектор сломался. Я не тот анон, которому ты предлагал решить задачку на частоту повторов элементов. Вот я >>291911 и я хочу больше узнать про мэпы и деревья.
333 1291944
>>291932
Нойс. Надо бы побольше почитать про функциональшину.
sage 334 1291992
На чём вообще в 2018 году пишут веб приложухи на джаве?
335 1292011
>>291992
На Spring (Boot).
sage 336 1292014
А mvc это шо?
337 1292019
>>292014
Это тоже спринг.
Там много всего.

MVC - это "классический" способ делать веб-приложения, типа php, например.
В этом случае html создаётся на сервере.

Можно иначе - не сервере rest веб-сервисы, а весь пользовательский интерфейс на клиенте - на JS - React и т.п.
338 1292050
Что юзать для ботописательства в телеграм?
339 1292056
>>287973 (OP)
Аноны, представим что есть конструктов класса, он принимает в себя 2 строки (String). Как запретить передачу 2 одинаковых строк?
340 1292058
>>292056
Только проверять и вызвать исключение.
Но, исключение в конструкторе - это не очень хорошо.

Можно вообще не использовать (публичный) конструктор.
А использовать factory/билдер, и заставить клиента передавать строки по отдельности, с говорящими именами методов. Это если проблема в опечатках в коде, например.

MyClass o = MyClass.withFirstString("Ololo").andSecond("LoL").create();
341 1292065
>>292058

>использовать factory/билдер


Хорошее решение жаль я не додумался до него лол этим утром.
Сегодня на собеседовании про исключения вспомнил, но начал сомневаться можно ли их к конструктору прикрутить или нет.
342 1292081
>>291742
Лол, у кого-то случился легкий бугурт от моего нубо-вопроса.
тот, кто спросил
343 1292094
>>291849
var filteredList = users.stream().filter(user -> user.getUsername().equals("VasyanNagibator2005")).collect(Collectors.toList());
Ну и нах мне твоя мапа??
344 1292095
>>292094
Так как ты никто делать не будет. Будут делать запросы к базе данных, а для поля имени сделают индекс, который по сути и есть ассоциативный массив (правда в зависимости от типа индекса он может быть как хэш-мапом, так и какой-нибудь разновидностью дерева).
345 1292096
>>292094
Лол, ты и вправду думаешь, что это будет работать быстрее поиска по хэшу в хэш-мапе?
346 1292097
>>292096
Для маленьких листов (меньше 20 элементов) оно действительно может быстрее работать (из-за того что процессор любит запихивать небольшие массивы в кэши и мегабыстро работать с ними). Однако stream всё портит. С ним всё будет в разы медленней. https://blog.jooq.org/2018/10/29/imperative-loop-or-functional-stream-pipeline-beware-of-the-performance-impact/
347 1292099
>>292097
Хотя да, жавы это не касается. Ведь в ней все коллекции хранят ссылки, а не значения, а значит кэш тут никак не поможет. Остаётся ждать пока доделают value types и reified generics.
sage 348 1292100
>>292099

>value types и reified generics


Не нужны.
349 1292101
>>292100
Тебе-то конечно не нужны. Ты даже что это такое не знаешь. Это для тех кто пишет библиотеки, а не для тех кто хуячит круды.
350 1292118
>>292099

>Остаётся ждать пока доделают value types и reified generics.


Сударь видимо не в курсе, во что превратился Project Valhalla ради совместимости. Я бы на твоём месте не ждал ничего.
351 1292203
>>292050
питон
352 1292214
Зашел сказать, что Java - костыльное говно. Я просто хуею после питона над попытками прикрутить функциональщину. Убейтесь, блять.
sage 353 1292221
>>292214

>пук

354 1292245
>>292214
Сынок, питон - вообще последний язык, на котором надо делать фп.
Хуже только 1С, наверное.

Хуеет он после питона, ну надо же.
Не после надо хуеть, а во время, лол.

Это не говоря уже о том, что фп на любом языке без статической типизации - это как онанизм в ежовых рукавицах, примерно.
355 1292260
Поясните за функциональщину, а то, увидев ее в жабе, только пожал плечами и задал себе вопрос "а нахуя?"
356 1292279
>>292118
И во что он превратился? Если будет возможность создать ValueList<T>, где внутри массива будут зраниться значения (а не ссылки как сейчас), то всё что я написал будет работать, а всё остальное не имеет значения.
357 1292290
>>292260

>Поясните за функциональщину


Это долго.

Но, если коротко, то основная, на мой взгляд, идея - это то, что всё является значением.
Т.е. в программе нет "команд", а есть различные трансформации значений с помощью чистых функций. Например, вместо того, чтобы выбросить исключение, функция возвращает определённое значение.

Почитай Functional Programming in Scala:
http://www.allitebooks.com/functional-programming-in-scala/
Скалу там знать не обязательно, объясняется в процессе и используется относительно небольшое подмножество языка.

Есть ещё прекрасная "Functional Programming in Java" и "The Joy of Kotlin" (та же книга, но в версии для Kotlin).
358 1292291
>>292279

>внутри массива


Это где, лол?

Есть хип и есть стек, никакого "внутри массива" нет.
359 1292293
>>292291
Это значит лист будет выглядеть внутри примерно так:

<размер>,<объект1>,<объект2>,...,<свободная_зарезервированная_память>

Сейчас он выглядит так:

<размер>,<указатель_на_объект1>,<указатель_на_объект2>,...,<свободная_зарезервированная_память>

Возможно такой лист можно сделать и сейчас (используя какие-нибудь unsafe-техники), но хотелось бы возможность такой специализации шаблонов изкаробки.
360 1292297
>>292293

>специализации шаблонов


На плюсах пишешь?
361 1292299
>>292297
Это очень простая специализация и доступна в том числа и на C#. Магии шаблонов для неё не требуется.
362 1292304
>>292299
Я не об этом спросил.

Если ты привык писать на плюсах или даже на шарпе, то надо понимать, что в джаве - несколько другие правила игры.
И на джаве надо писать как на джаве.
363 1292307
>>292304
Это не другие правила. Это искусственное ограничение, снять которое в том числе и призван project valhalla. Ты мне напоминаешь ватников с их "никогда хорошо не жили, неча и начинать" и "диды так не писали и ты не будешь".
364 1292310
>>292290
Ок, спасибо.
365 1292311
>>292019
какую-то хуйню несешь
366 1292312
>>292307

> ватников с их "никогда хорошо не жили, неча и начинать"


Лол.
Суть ватников несколько иная, но не думаю, что сейчас уместно было бы это обсуждать.

На любом языке нужно писать идеоматический код.
Играть по правилам.
А не лезть в чужой монастырь со своим уставом (что есть признак непрофессионализма).
Смысл в этом.

Это непросто, но надо стараться.
367 1292315
>>292311
Сказал как отрезал, лол.

На, вот, сосни-ка хуйца, и дальше иди.
368 1292320
>>292312

> Играть по правилам.


Ещё раз. Это не правила, это ограничение. В первую очередь ограничение условленное изначально кривыми генериками со стиранием типов. Сейчас хотят сделать структуры и нормальные генерики для них, а значит станет возможным и их специализация. Ты какой-то странный. Тебе говорят, что в язык добавляют новые фичи, а ты пишешь что они, это самое, нарушают правила. Может у тебя var тоже нарушает правила? Диды ведь так не писали. А в java 12 вообще столько нарушений завезли:

- паттерн матчинг: http://openjdk.java.net/jeps/325
- raw-строки: http://openjdk.java.net/jeps/326

Ухх, скоты. Столько правил нарушают. Посадить их надо за это!
369 1292323
>>292320

> паттерн матчинг


Хотя не, вру. Это http://openjdk.java.net/jeps/305 а завезли только его подмножество. Конечно, нарушение правил есть, но можно этому скоту Brian Goetz, уже выдать не смертную казнь, а только пожизненое заключение за посягательство на швитые правила.
370 1292331
>>292019
анон >>292311 поясняет

>Это тоже спринг.


mvc это не спринг блять загугли, малыш

>MVC - это "классический"...


загугли если не умеешь то mvc это паттерн согласно которому код принято разделять на back и front части то бишь клиентскую часть и серверную

>html создаётся на сервере.


???
ты по http реквесту строкой отсылаешь хтмл а браузер уже рендерит

>сервере rest веб-сервисы


rest это архитектурный стиль основанный на концепции ресурсов он не мешает тебе его с mvc применять
371 1292350
>>292050
А с жавой как?
372 1292359
>>292320
Да он просто сидит на 5 джаве и завидует j8-боярам и j11-богам.
373 1292362
>>292331
Малыш, слово "контекст" тебе, видимо, пока незнакомо.
Для программиста это не очень хорошо, лол.

Речь шла про Spring MVC, про Spring REST сервисы, и про всю остальную многочисленную спринг-хуету.
О которой ты, до сегодняшнего дня, даже не слышал, как и о самом спринге.

Алсо, "MVC", "back-front" и "клиент-сервер" - это очень разные вещи.
Общего у них разве что сама идея разделения на части.
374 1292374
>>292362

>А mvc это шо?


где ты там spring увидел?

>Речь шла про Spring MVC


и?
https://softwareengineering.stackexchange.com/questions/324730/mvc-and-restful-api-service
в гугл переводчик можешь закинуть
375 1292378
>>292362
а вообще такое чувство что я тролля кормлю
376 1292410
>>292378
Нет, я не тролль.
Я просто очень давно всем этим занимаюсь, и воспринимаю эти вещи несколько иначе.

А ваша категоричность и придирчивость, юноша, выдаёт в вас восторженного неофита, который пока не научился видеть лес за деревьями, лол.

>где ты там spring увидел?



Там парой комментов выше вот это:
http://java-master.com/spring-mvs-настройка-без-xml-web-xml/

И, я решил, что это пишет один и тот же человек.

На этом предлагаю закончить.
Покормил, да и хуй сним, лол.
377 1292415
>>292019
Реально хуета, анонс, >>292014
лучше погугли, чем здесь советчиков слушать
378 1292429
Сап. Работаю QA в одной быдло конторе и сейчас у нас IT менеджмент стал активно пропихивать Swagger спецификацию, большинство REST API документаций сейчас описывается в этом формате. И вот на меня стали давить чтобы на основе этих спецификаций я написал a framework который будет автоматически генерировать API тесты. Ну к примеру, есть описание POST запроса, типа post /user/create у которого request body:
{
"username":"user"
"state":"active"
}

И вот я должен на основании этого написать логику которая будет генерировать тесты типа:
- отправь запрос с пустым body и проверь что response code такой-то
- отправь запрос с пустым "username" и проверь что response code такой-то
- отправь запрос с пустым "state" и проверь что response code такой-то
- и т.д и т.п

За основу предложили взять https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator который позволяет авто генерировать по одному success тесту на каждый endpoint описаный в swagger спецификации. Мол я должен форкнуть его чтобы он также генерил тесты которые я описал выше.
И теперь внимание вопрос, насколько вы считаете это сложная задача?
Опыта в программировании у меня всего нихуя, могу писать авто тесты используя существующие фреймворки и поэтому мне эта задача кажется пиздец сложной, но отказатся делать ее мне как то неудобно, боюсь менеджмент посчитает меня лошарой(они все разработчики с большим опытом), мол хули там делать, а если не можешь, тогда возьмём другого QA кто напишет.
379 1292436
>>292410

>занимаюсь так давно что уже и забыл что это


пофиксил тебя
а вообще ты не шаришь старичок))
380 1292440
>>292436
Где та молодая шпана
Что сотрёт нас с лица земли?
Ее нет, нет, нет...
sage 381 1292443
>>292429
Сказали — выполняй. Не можешь — уволят за несоответствие должности и правильно сделают)
382 1292460
>>292429
Без опыта - это очень сложная задача.
Да и с опытом - непростая.

>мол хули там делать


Разработчики с большим опытом обычно избегают подобных формулировок.

Алсо, документация на эту хуету оставляет желать, мягко говоря.

Но, это не значит, что не стоит пробовать.
Может быть, там всё не так уж и сложно.
383 1292469
Как элегантнее реализовать схему обратной польской?
https://pastebin.com/gT7z9sb5
для личной практики
Задача такая: На вход поступает строка математического выражения, содержащая
- переменные
- цифры
- унарные функции
- бинарные операторы
На данный момент есть распознавание для строки, где разные обьекты разделены пробелами, с помощью словаря записаны некоторые константы, с помощью этого же словаря меняются переменные.
~ Стоит ли модифицировать исходную строку при получении с помощью регулярных выражений: между [a-Z]и[+-*)(/] вставлять пробелы для того, чтобы строка была валидной для имеющейся функции
384 1292470
>>292460

> Алсо, документация на эту хуету оставляет желать, мягко говоря.


Та пиздец, сижу вот дебажу уже 3й час. Пока вообще нет идей как там происходит эта генерация. Классы, блядь, по 1000 строк
385 1292473
>>292469
Погугли язык FORTH и его реализации.
На джаве тоже что-то было.

Может, наведёт на какие-то мысли.

Насколько я понял, тебе что-то подобное и нужно, только в весьма упрощённом виде.
386 1292477
>>292473
Добавлю:

Если тебе нужно именно RPN, то идея в том, чтобы _вычислять_ результат. Помещая промежуточные результаты на стек.

Если же тебе надо просто прикрутить возможность вычисления строковых выражений, то лучше использовать Groovy или даже JEXL, и просто вычислять нормальные выражения, безо всякого RPN.
387 1292522
Анон, помогай, плыву пиздец.
Есть ArrayList<boolean[]> field - игровое поле, и есть метод update. Каждый раз при вызове update() первый элемент убирается и происходит сдвиг всего массива, после чего на освободившееся место ставится новый массив.

[CODE]for (int i = 0; i < height - 2; i++)
getField().set(i, getField().get(i + 1));
getField().set(height - 1, new boolean[width]);[/CODE]

Это же нихуя не ссылочно происходит? То есть,

> field.set(y, field.get(y+1));


скопирует массив, и в итоге всё будет засрано массивами? Если нет, то заебись, если да, то как это сделать правильно?
388 1292527
>>292522

>скопирует массив


Нет.
Более того, чтобы именно скопировать массив - надо специально постараться.

Алсо, нахуя массивы в списке?
Или двумерный массив (всё будет тоже ОК), или, тогда уже, список в списке.

Вообще - массив (переменная) - это всегда указатель. Даже в Си.
389 1292529
>>292527

> нахуя массивы в списке?


Потому что изначально это был именно что boolean[][], и когда я делал так:

>field[y] = field[y+1];


- Idea мне это дело подчеркнула с комментарием "ага копируеш". Собственно я и сам знаю то, что ты написал, но этот инцидент вынудил засомневаться.
390 1292535
>>292529

>ага копируеш


Лол.
Идея имела в виду, что ты копируешь _первый_ уровень (тот, что стал списком потом) массива _вручную_.

Но, ты же и правда это делаешь (частично).
Копируешь значения (ссылки на вложенные массивы) в соседние ячейки.

Используй System.arraycopy с соотв. индексами, и копируй (сдвигай) массив за один вызов метода.
391 1292538
>>292535
Алсо, какая длина массивов второго уровня?
Можно же вместо них использовать битовые поля в long (если 64 колонки тебе хватит).
Байтоёбить, так по хардкору.
392 1292542
>>292535
Всё, спасибо, успокоил, про arraycopy она и писала. Всё время дрочусь с этими ссылочными типами, а тут массив в массиве да ещё и на джаве, которую я не очень хорошо знаю.

>>292538
10. Думал об этом, но опять-таки засомневался в своих знаниях, так что решил сначала написать как-то, а потом допилить. Так что ещё раз спасибо за подсказку, откуда подступиться.
393 1292564
Делаю всё по https://spring.io/guides/gs/accessing-data-mysql гайду, выбрасывает пикрилы, кто-нибудь может помочь?
394 1292565
>>292564
Обозначь вместилище фасолиной. Тупой даун.
395 1292570
>>292565
я нипанимаю
396 1292574
>>292570
Программирование не твое. Попробуй JavaScript.
397 1292579
>>292570
Конфиг-то есть? Как ты думаешь спринг создаст репозиторий?
Ты или должен в классе помеченном аннотацией @Configuration пометить какой-то метод возвращающий UserRepository аннотацией @Bean. Если есть спринг дата можно написать интерфейс расширяющий JpaRepository/CrudRepository, добавить нужных методов и пометить класс-входную тчоку (где main) аннотацией @EnableJpaRepositories, и тогда оно само создаст реализации репозиториев.
398 1292586
>>292429
Я не до конца понимаю, и ты мне кажется тоже, что от тебя хотят? Чтоб все тесты за тебя писала машина? Или просто сгенирировать java-клиент по swagger-спецификации, который ты будешь использовать в тестах?
399 1292602
Попробовал посмотреть, что такое этот ваш сваггер (2 минуты, буквально).
Какая-то хуйня.
Зачем подсаживаться на какой-то мутный проприетарный инструмент?

Я, вообще, не занимаюсь такими вещами, но недавно пришлось иметь дело с SoapUI (тоже SmartBear).
Лютая хуета, совершенно не юзабельна, делали какие-то дегенераты.

И вот, те же самые дегенераты делают сваггер.
Нахуй он нужен?
400 1292611
>>292564

> https://spring.io/guides/gs/accessing-data-mysql


Пытаешься сделать круд вэб аппликацию?
401 1292612
>>292611
ага
402 1292617
>>292611
как с тобой можно связаться, тем же самым сейчас занимаюсь
403 1292623
>>292586
Чтобы тесты генерировались автоматически. Предположим что у нас в спецификации есть request body у которого есть атрибут username со следующими параметрами:

Type: Int
Min length: 2
Max length: 12

То мы на основании этого должны сгенерировать, к примеру, след тесты:
- Запрос в котором username будет String
- Запрос в котором длина username будет Min length - 1
- Запрос в котором длина username будет Max length + 1
- и т.п
404 1292633
>>292623
А проверяться то что будет? Что возвращается 500?
405 1292635
Какого * я делаю все по примеру https://java2blog.com/spring-boot-angularjs-example/ но у меня не работает ?
Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.3.RELEASE:run
406 1292636
>>292633
Да, будет проверяться что возвращатся 400
407 1292652
>>292635
Там старый спринг, старый бут.
Ангуляр не смотрел, но, думаю, тоже не новый.
И эклипса.

Поверь, тебе это не надо, найди другое что-нибудь.
На сайте спринга есть пошаговые примеры подобной хуйни.
408 1292737
>>292602
Он нужен что бы описать, добавить документацию, наладить контракты передаваемых данных, а потом сгенерировать имплементацию, первая часть работает, а на вторую я слышал все плюются, в итоге пользуются первой его частью, а имплементацию делают сами или другими инстурментами.
image.png3 Кб, 141x37
409 1292858
Милые анончики, помогите решить задачу; https://stepik.org/lesson/46943/step/2

Захотел тут в функциональном программировании в Жаве разобраться. Шло вроде нормально, разобрался с предикатами, стримами, но блять наткнулся на эту задачу и второй день как дебил.

Там в комментах даже бабы ее решили чувствую себя каким-то неполноценнымю
410 1292878
Аноны, мне тут стало интересно, а как обстоят дела с зп инженеров за границей? Ну там хардкорных разработчиков электронных схем, разработчиков каких-нибудь двигателей и прочего. А то в России таким специалистам платят меньше, чем в айти, при этом по-моему порог вхождения там гораздо выше. Странная ситуация.
411 1292880
>>292858
Если тебе надо ФП - см. >>292290

То, что по твоей ссылке - это какая-то дичь.
412 1292904
>>292878
В России нет производств с высокой степенью передела, технологии не развиваются, нет науки, нет образования.

И нет инженеров.
А 100 лет назад - были.
Снимок экрана от 2018-11-10 19-20-57.png31 Кб, 734x308
413 1293060
линупс аноны, помогите с томкатом, плез. Пытаюсь запустить сервер, выдает

>java.io.FileNotFoundException: /opt/tomcat/webapps/manager/META-INF/context.xml (Отказано в доступе)


судя по тому, что я нашел в гуголе, я хуево права доступа (не)настроил. пикрил не работает, в чем может быть проблема?
414 1293076
>>293060
Выясни, от имени какого пользователя у тебя запускается tomcat.
И дай ему нужные права на директорию.
Или наоборот, запускай от имени того пользователя, у которого права есть.

И поставь Midnight Commander (mc), чтобы было попроще всё это делать.
415 1293077
>>292904
И Попов такой молодой...
416 1293101
>>293076
если я правильно понимаю, он запускается от root'а, а у него вроде бы есть все права. Забыл уточнить, в консоли он прекрасно работает вроде, а вот из intellij не хочет. Как узнать от имени кого идея запускает томкат?
https://pastebin.com/N2Q8JMXr
417 1293114
>>293101
Запусти:
ps -ax | grep tomcat
и посмотри.

И вот это вот почитай:
https://scanlibs.com/komandnaya-stroka-linux/
418 1293115
>>293114
А, вижу, ты уже так делал.
И что, когда через идею, то его не видно в ps?
Если так, то он запускается от твоего имени, как идея.
Добавь себя в нужную группу.
419 1293182
>>293115
у меня проблема в том, что я не знаю, какая группа "нужная". судя по гуглам, группа "tomcat", но терминал мне говорит

>chgrp: неверная группа: "tomcat"

420 1293193
посоны, какие мои шансы устроиться джуном при следующих данных:
знание Джава: не расскажу про рефлексию, плаваю в джава 8, не расскажу подробно про канкарент, базовый мультитрединг расскажу: как запускаются потоки, дедлок и рэйс кондишн, волатайл, вэйт, нотифай, джойн, слип и тд, потокобезопасный синглтон напишу по типичным вопросам собеседования задрочен нормально.
мавен: расскажу про пом.хмл, репозитории, жизненный цикл клин-билд-сайт, без глубоких подробностей цикла билд(тест, сборка ресурсов, билд, пэкедж, деплой), сгенерю через консоль артифакт, запакую в пакет
спринг: расскажу про апликейшн контекст виды, деплоймент дескриптор, аннотации, бины, их жизненный цикл, напишу хеллоуворлд и задеплою на томкат или jboss
В принципе расскажу про сервлеты, контейнеры, jsp, сессии, куки, гет, пост, http без погружения в аттрибуты head
jdbc: подключу драйвер, установлю коннекшн, создам стэйтмент, пройдусь по резулт сэт, знание sql на уровне объединения, получения итоговых значений и вложенных селектов
ооп, солид, знаю простые шаблоны вроде адаптера, декоратора, композита, фасада, синглтона(лэйзи и нет), мвс
не работал с гитом вообще. кроме коммит и роллбэк ничего не знаю.
алгоритмы и структуры данных: понимаю но не воспроизведу по памяти(узнавание) квиксорт, сортировку вставками, пузырьком напишу. рекурсию напишу, стэки, очереди, массивы, списки расскажу вкратце, бинарное дерево расскажу, красно-черное - нет.
из практики пройденный до 35 уровня джавараш.

ну и так по мелочам всяким. xml, xsd, json, хуй знает, один день кажется, что я уже дохуя знаю и нужно пиздовать работать, на следующий день кажется что не знаю нихуя
421 1293195
>>293193

>head


header
422 1293197
>>293193
Примерно нулевые.
423 1293199
>>293182
Так создай группу tomcat.
424 1293200
>>293197
А хуле нада то?
425 1293201
>>293193
Нормальные шансы.
Больше зависит от того, где ты живёшь, и есть ли там работа.
426 1293202
>>293201
Спасибо. Вакансии есть, но все пишут, что опыт от года.
427 1293203
Джавабоги, какие книги читать чтобы пиздец знать джаву? Чтоб блять прям байткод знать и нюансы компиляции? Чтоб коллеги боялись аж. Все вокруг для новичков, заебало.
428 1293206
>>293202
Все всегда пишут очень много всего в требованиях.
Не обращай внимания.

Если надо - соври.
Скажи - фрилансил.

Если заморачиваешься - найди в интернетах какую-нибудь охуительную историю начинающего фрилансера, и сделай себе легенду по ней.

Если складывается так, что ты чего-то не знаешь - скажи, что сейчас не в теме, надо подумать, забыл, надо освежить память и т.п.
429 1293209
https://jsehelper.blogspot.com/2016/01/blog-post_59.html
Бля, там реально всю эту хуйню спрашивают? Я вот например на большинство вопросов хуй отвечу, максимум своими словами, но блять это не мешает мне писать код и в принципе знать как всё работает.
430 1293213
>>293203
Посмотри ASM и/или BCEL.

И вот это посмотри:
http://www.allitebooks.com/java-performance-the-definitive-guide/
431 1293217
>>293213
А компиляция? Просто все курсы джавы учат "напиши вот так и вжух будет вот так". Потом тебя на собеседовании спрашивают почему такое не компилируется и всё, приехали. Не могу я как то проложить дорожку до самого исполнения на проце, или я должен спеку заучивать для программирования на джаве?
432 1293218
>>293206
Спасибо, бро. Еще вопрос, имеет ли смысл суваться к гигантам через тренинги и лабы или пробовать в мелкие конторы?
433 1293219
>>293217
Судя по вопросам, ASM и BCEL тебе смотреть рановато, лол.
И ту книжку тоже.
Хотя, книжку, всё-таки, посмотри.

>почему такое не компилируется и всё, приехали


Не компилироваться может только из за ошибок в коде.

Или синтаксических (это просто, хотя, иногда, не очевидно с первого взгляда).
Или логических - использование неверного типа, отсутствующий return, использование неинициализированной переменной, нарушение правил доступа (public/private) и т.п.

Чтобы это видеть - надо знать язык и иметь некоторый опыт программирования.
Исполнение на проце тут ни при чём.
Спецификацию заучивать не обязательно.
434 1293220
>>293206
вот этого удвоил, годноту несёт
435 1293221
>>293218
Если честно - не знаю.
Это зависит от кучи причин.
Мелкая контора может быть предпочтительнее для начала.
436 1293224
>>293221
Меня не кинут там в самое пекло, где я жиденько обосрусь? По сути, я же не умею толком писать нормальный код. То, что я на кодварс пишу в 10 строчек некоторые пишут в 3. Я хуй знаю что где и как комментить, бэд практис, пропущу где-нибудь проверку на null или еще какую-нибудь примитивную хуйню.
437 1293226
Анончики, поясните, ЯННП. Вот кусок функциональщины:

@FunctionalInterface
interface RequestHandler {
Request handle(Request request);
default RequestHandler setSuccessor(RequestHandler other) {
return (request) -> other.handle(this.handle(request));
}
}

Я совершенно запутался. В setSuccessor передаётся параметр "RequestHandler other". Откуда там берётся еще какой-то "request"?
438 1293228
>>293224

>Меня не кинут там в самое пекло


Есть только один способ проверить.
И это может быть как минусом, так и плюсом.

Вообще, это такой вопрос, который ты должен решить сам, исходя из имеющихся вариантов и личных предпочтений.
439 1293229
>>293224

>пропущу где-нибудь проверку на null или еще какую-нибудь примитивную хуйню



Для этого есть тестировщики же.
440 1293231
>>293226
Возвращается новый инстанс хендлера с определенным методом хендл (который и принимает реквест этот)

>>293219
Спасибо конечно за советы, но "не компилируется потому что ошибки" это топ, да. Может подскажешь какие нибуд книжки по процессу превращения джава кода в инструкции на проце? Как это всё jit компилируется, бегает крутится?
441 1293234
>>293231
Я понял, что возвращается RequestHandler, это в определении видно.
Мне непонятно, откуда этот сраный параметр (request) появляется и как он передается в эту функцию?
442 1293237
>>293234
Возвращается анонимный класс хэндлера у которого реализуется метод хендл. Здесь он никак не передается, это лишь сигнатура, скажем так, реализованного метода. Аналог:
default RequestHandler setSuccessor(RequestHandler other) {
return new RequestHandler() {
public Request handle(Request request){
other.handle(this.handle(request))
}
};
}
443 1293241
>>293226
Почему бы тебе не почитать одну из книг, которые я упомянул выше?
Порешать примеры оттуда?

В твоём коде метод setSuccessor() возвращает функцию.
request - это параметр, который принимает возвращаемая функция.
И он, естественно, используется в её теле.

Нюанс тут в том, что при возвращении эта функция кастится к интерфейсу. Т.е. эта функция - это реализация метода handle() этого интерфейса.
Т.е. раньше (в Java 7) там было бы:
return new RequestHandler {handle(Request request){...}};

Всё это - специфика практического прикладного ФП на джаве.
И начинать с такого я бы не советовал.

Найди в интернетах книжку Functional Programming in Java и почитай. Там объяснются именно общие идеи ФП, но с примерами на джаве.
444 1293246
>>293241

>Functional Programming in Java



Боже ж мой, 185 страниц, какой кайф после других 900+ страничных.

>>293193-кун
445 1293247
>>293237
Спасибо, стало понятнее. Лучшей добра и милых тяночек тебе.

>>293241
И тебе.
446 1293248
>>293231

>Как это всё jit компилируется, бегает крутится?


Ты странно спрашиваешь странные вопросы.

Внутренняя механика компиляции не имеет никакого отношения к вопросу "почему не компилируется этот код", понимаешь?
И, тем более, JIT и т.п.

Джаву для того и придумали, чтобы программист не думал обо всей этой хуете.

Но, если любопытно - читай спецификацию JVM, смотри байткод и т.п.
ASM и BCEL, опять же.
https://bytecodeviewer.com посмотри.
Гуглить ещё можно, например.
447 1293253
>>293246

>185 страниц,


Это MEAP, видимо (до окончательной публикации).
Так-то там 476 страниц.

Но, книга охуенна, хотя и не особо легко читается.
И читать надо неспеша.
Это не та тема, которая поможет быстро найти работу с нуля, например.
Это, скорее, про то, как стать лучше, когда ты уже и так неплох.
448 1293257
>>293248
Я понимаю что механика компиляции не связана с правилами в спецификации. Но мне интересно почему именно такие правила? Просто заучивать факты сложнее, чем если бы ты знал азы, на которых мог строить предположения.
Всё равно спасибо.
449 1293259
>>293253

>Так-то там 476 страниц


Потому что он нашел книгу Венката, а ты посоветовал другую, от 2017г
450 1293265
>>293259
Точно.

>>293246
Я имею в виду вот эту книгу:
https://www.manning.com/books/functional-programming-in-java

>>293257

>почему именно такие правила?


Потому, что это такой язык.
Других причин нет.

Большинство правил - просты и интуитивно понятны.
И совпадают в большинстве Си-подобных языков.

И эти правила, в 99.9% случаев, никак не связаны с особенностями компиляции в байткод, и тем более, с особенностями работы JVM (нативный код).
451 1293388
Норм ли Java по metanit.com изучать?
452 1293481
Где можно найти задачи по кору от простых к сложным? Кучу задач, которые нахожу либо слишком простые, либо пока что сложные.
453 1293557
>>293203
JLS/JVMS
454 1293558
>>293203
JLS/JVMS
455 1293652
Столкнулся с со странными примерами кода в SpringInAction 5. Которые ЯВНО не верны. Пример - форма регистрации юзера.
А еще автор предлагает учить жава скрипт, лол, В учебнике по жаве.
456 1293659
Читаю Head First Servlets and JSP. Живо ли сейчас JSP и JSTL?
457 1293660
>>293652
Правильно предлагает, как ещё фронт писать. Только фреймворк какой-нить по типу бутстрапа юзать, а это по сути тот же джаваскрипт
458 1293695
>>293659
Хуй его знает, за шесть лет работы не видел ни разу. Хотя легаси по-любому есть.
459 1293701
>>293695
2 года работал только с jsp и это было жуткое легаси
460 1293710
>>293701
>>293695

Вообще есть смысл сейчас изучать стек JavaEE?
461 1293719
>>293660
Не отменяет того что он мудак и дает не рабочий код в учебнике для нубов. По мнению автора это хуйня - рабочая форма пост формы с тимлифом.
462 1293725
>>293719
Ну, так-то да, рабочая, что тебе в ней не нравится?
463 1293728
>>293725
Ну попробуй ее скомпилировать. Тимлиф тебя пошлет нахуй. Спринг тебя пошлет нахуй. Получишь нульпоинтер.
image.png11 Кб, 439x102
sage 464 1293734
Пасаны, если у меня на бд нет пароля, то в конфиге просто пикрил нужно сделать?
465 1293735
>>293728
До компилятора мне далеко, но вот я не вижу проблемы. Нуллпоинтер где выдаёт? Запусти в дебаге и скажи на чём. Просто судя по примеру, есть одна форма и один контроллер, ну и там только один постмаппинг, а потому он будет все посты обрабатывать. Может автор пока не дописал репозиторию?
466 1293737
>>293735
Там нет модели нигде. Ты из формы получишь нуль. Который ты хуй куда сохранишь.
467 1293740
>>293737
Для постмапинга не нужна модель, сохранил - редиректнул в ретурне. Давай лучше скажи какая это глава, а на гитхабе посмотрим фулл код.
468 1293744
>>293740
На гитхаб я не лез, глава вон есть на скринах. Один хер с этим потом ничего не сделаешь. Даже валидацию полей не получиться прикрутить.
469 1293747
>>293744
А куда ты собирался прикручивать валидацию полей? Почему просто не в класс своего User.
@NotNull( message = "Ты чмо");
Ну и в листке прописать еррор на это дело.
470 1293753
какие же вы все унылые пидорасы-вкатывальщики со своим унылым спрингом и ее. пидорасы, бесите меня все, как и эта джава ебучая, и вообще программирование в рот ебал
471 1293755
>>293753
До завтра
472 1293775
>>293719
попробуй в @GetMapping сначала добавить RegistrationForm в модель
473 1293795
>>293710
Очень дохуя кода уже написано и работает.
И никто его не будет переписывать на другую технологию, в обозримом будущем.

И это не обязательно какое-то древнее "легаси".

Другой вопрос, что весь EE не нужен, нужен только Web Profile.
Сервлеты и JSP, короче.
474 1293799
>>293710
А кроме EE ещё что-то есть вообще?
475 1293802
>>293744
Ты это руками набирал, или копипастил из книги?
Зачем?

Есть код на гитхабе, его и компилируй.
А в книге - иллюстрации.

Тем не менее, могу сказать, что пятое издание сильно отличается от предыдущих, и не в лучшую сторону. Принципы работы контейнера и т.п. почти не рассматриваются, типа и так всё понятно.

Видимо поэтому Маннинг даёт бесплатно предыдущее издание при покупке пятого, лол.
476 1293805
>>293799
Нет.

Т.е., с одной стороны они говорят, что ЕЕ будут убирать, а с другой - ничего взамен.
То же и с десктопным GUI (Swing), который весьма востребован в корпоративных приложениях. И в IDE.
Оракл охуел.

Из сторонних решений - Spring.
477 1293822
>>293805
Сысле то же и с десктопным гуем? Тебя уже ЖаваФХ не устраивает? Годная вещь же.
478 1293830
>>293822
Во первых, FX - хуета без задач.
Я тут уже писал на эту тему раньше, сейчас лень.

Во вторых - его сливают на 2 года раньше, чем Swing.
Swing - в 2026-м, а FX - то-ли в 24-м, то-ли в 22-м, или даже раньше.
Потому, что Swing реально востребован, в отличие от.

Я лично думаю, что за эти годы появится что-то новое на эту тему.
Или Swing проапгрейдят.

Потому, что народ уже порядком подустал от дивного нового мира фронтенда на джаваскрипте. Года с 2016-го начали уставать.
А через несколько лет устанут гораздо сильнее.
479 1293832
>>293822

>Тебя уже ЖаваФХ не устраивает? Годная вещь же.


Прямо сейчас пишу на этом говне жирное десктопное приложение. Ну в общем оно сырое.
480 1293839
>>293832
Что именно не нравится? А то мне только предстоит такое приложение писать.
481 1293846
>>293802
Я его сравниваю с 4м да. Его читал с год назад. Там и про аспекты и про много много всего базовго. А 5я - ну тип хуярим вот тут так, потом бля тут куска кода нет и мы его вставим в 3-5-15 главе ну и хуй с ним что переписывать все, и все что писалось до этого говно и нинужна.
Тесты? Какие тесты. Их там нет. 1-2 попалось базовые за 200 страниц.
Сижу ковыряю баелдунга, хули делать.
482 1293854
>>293839
Куча мелких багов типа непрорисовывания строк в tableView. И хз что с этим делать.
Или например под линуксом не получается сделать окно "подождите, выполняется операция". Оно рисует пустое окно. При этом под виндой норм.
Отсутствие вменяемого профайлера. Есть какой-то, но онтоже кривой и сырой. Слава богам есть возможность делать формочки через гуй, для идеи есть плагин. Но опять же надо все это потом доделывать руками.
Позиционирование элементов относительно друг друга - ебаная магия. Я так и не понял как это должно работать. В свинге гораздо проще и логичнее.
У классов куча методов, дублирующих друг друга, и при этом не работающих.
И вообще такое ощущение, что этот фх делала какая-то фемка, получившая место по квоте. Уж очень все по-женски нелогично, нет единой философии и бест практис. Ощущение что копаешься в куче налепленного говна
483 1293866
>>293830
В 2021-м половина фронтенда будет на Питхоне, который будет поддерживаться всеми браузерами наряду с JS.
Запомните этот пост.
484 1293874
>>293866
Дело не только в языке.
В первую очередь - в HTML (DOM).
Он не предназначен для создания динамических UI. Это язык разметки текста.

Но, и в языке, конечно, тоже.

Питон, как и JS - динамически типизирован, и непригоден для больших проектов.

Даже хипстеры-смузихлёбы уже поняли важность статической типизации, и начали переползать с JS на TypeScript. Но, TS - говно по своей сути, чужеродная надстройка над JS.

И даже упоротые питоноёбы начали это понимать - и прикрутили типы в последних версиях питона. Что из этого выйдет - посмотрим.
Пока - компилятор/интерптетатор их не обрабатывает, и какой в них толк - не очень понятно.
485 1293876
>>293854

>Позиционирование элементов относительно друг друга - ебаная магия.



Попробуй MigLayout.
Это лучший layout manager на сегодняшний день.
Оптимизирован для ручного кодирования, но, поддерживается и в JFormDesigner (только для Swing).

Там есть модуль для FX (и даже для SWT).
Сайт у них старый, актуальную версию кода и примеры надо смотреть на гитхабе.
На сайте - доки. Основной - White Paper. Есть ещё Getting Started и Cheat Sheet.
486 1293880
>>293854
Хм, ну ладно, понятно, хотя я пока с багами не сталкивался. А насчет нелогичности - не знаю, по-моему довольно удобно, хотя и действительно не вижу общей философии.
487 1293902
Я могу в спринге сделать Autowired по аннотации? Чтобы все классы с какой-то аннотацией складывать в коллекцию.
488 1293921
>>293902
Приведи пример, что ты хочешь сделать.
Просто для складывания классов с конкретной аннотацией в коллекцию не нужен спринг
489 1293924
>>293921
Ну ясен хуй, что спринг у мен не для этого. Коллекция должна быть бином.
490 1294012
>>287973 (OP)
Нужно выполнить операции над джейсоном:

1) распарсить джейсон
2) валидировать поля
3) добавить несколько своих полей
4) сохранить в базе

Какой библиотекой можно все это сделать? Хватит jackson-databind? Есть примеры?
491 1294013
>>294012
Gson от Google глянь.
492 1294023
>>294012
Не "распарсить/сохранить" а десериализация и сериализация.

Суть в том, что с джейсоном ты имеешь дело только в пунктах 1 и 4.
Остальное - уже с джава-объектом некоего класса.
Чтобы выполнить п. 3 твой класс должен уже иметь эти поля, просто при десериализации в п. 1 они останутся пустыми.

И да, из готового - Gson.
493 1294024
Как не отчаиваться и продолжать дальше изучать ебаный спринг?
494 1294026
>>294024
Надо делать реальный проект.
А просто изучать - там очень много всего, и далеко не всё это нужно в каждом проекте.
495 1294028
>>294026

>Надо делать реальный проект.


Я сука не могу, слишком много всего из нихуя появляется, просто блять создал проект а там уже 100500 всякого говна налетело.
496 1294033
>>294028
Попробуй сначала минимальные проекты.
На сайте спринга есть пошаговые руководства, например.

Надо попытаться понять, как работают отдельные куски, и потом из них уже собирать что-то побольше.

И делай паузы.
497 1294052
>>294024
А запиливаю все примеры из гада.
Прям по инструкции, pom.xml я копипастой делаю, остальной код пальцами набираю.
На 3-ем примере уже руки помнять что там должно быть и появляются мысли что можно поменять и как кой пед проект запилить из этого.
Всё это естественно на гитхаб.
По итогу руки пишут код и гитхаб зеленеет.
После того как все примеры прочекаю думаю уже вкуривать мануал с самого начала.
498 1294104
>>294023

>


>И да, из готового - Gson.


Чем он лучше jackson из спринг бута?

Алсо, как в спринг буте писать информационные сообщения в один лог, а сообщения об ошибках в другой лог?
Можно ли в спринге перехватить исключения десериализации джейсона и записать сообщение и сам json в лог ошибок?
499 1294119
>>294024
У меня в спринге сложности вызывает только написание тестов по сути. Сам спринг как лего, если соблюдать логику слоев и не хуярить репозитории прям в контроллер.
500 1294223
>>294104
Тем, что он не в спринг буте, очевидно. И вопрос с исключениями сразу отпадает.
501 1294258
я извиняюсь за вопрос но может быть у кого то есть Шилдт Java. Полное руководство 10-е издание? я найти не могу уже весь интернет облазил желательно на русском
image.png219 Кб, 792x737
502 1294278
>>294258
Кое-кто совсем не умеет гуглить. На русском этого издания нет, но на английском ищется за пару минут. Даю подсказку.
503 1294279
>>294278

> на английском

504 1294280
>>294279
Ну так он и обозначил, что желательно на русском. Но раз на русском нет, пусть читает на ангельском.
505 1294281
>>294104

>jackson из спринг бута



Вообще-то, в спринге можно использовать что угодно.
Никаких ограничений не накладывается, и даже наоборот.

Насчёт лучше или хуже - я вообще использую свой десериализатор, потому, что готовые меня не устраивают. И это несложно.
506 1294285
>>294280
спасибо, скачаю 9 издание в ангельском пока слабоват

на русском есть просто в интернеты видимо ещё не завезли https://www.ozon.ru/context/detail/id/145826480/
507 1294288
>>294285
Зачем тебе Шилдт? Да ещё на английском?
Когда есть Хорстман, например (на обоих языках)?
https://scanlibs.com/java-tom-1-osnovy-10-izd/
https://scanlibs.com/java-se-8-vvodnyy-kurs/

Есть ещё вот это (не смотрел, но название заманчивое):
https://scanlibs.com/izuchaem-java-na-primerah-i-zadachah/
image.png19 Кб, 579x123
508 1294295
Можно как-то не создавать датасорс и взять эти данные из application.properies?Или тут нужно 100% конфиг делать?
image.png3 Кб, 264x22
510 1294359
А это сука что за хуйня блять?!
511 1294360
А лол я даун
512 1294385
>>294288

>Хорстман


>https://scanlibs.com/java-tom-1-osnovy-10-izd/


у меня он есть я его читаю сейчас просто мне посоветовали именно Шилтда, и где то слышал что Хорстман больше как справочник или между ними в целом всё равно что читать?

а 9 Шилтда издание кстати на русском есть
513 1294448
>>293902
Бамп.
514 1294462
>>293902
Если я правильно понял вопрос
Ты можешь сделать @Autowired над ,скажем, листом, и тогда спринг соберет все бины типа этого листа собвстенно в этот лист. Однако стоит действовать аккуратно, так как спринг версии 3 и ниже попытается инжектнуть собственно готовый лист, а не собирать его из бинов и можно напороться на NPE
515 1294466
>>294462
Да, это я как раз понял, что чтобы собрать коллекцию из бинов, они должны реализовывать один интерфейс или наследоваться от одного класса. Меня интересует, можно ли сделать так, чтобы в коллекцию собирались все бины с какой-то аннотацией.
image.png23 Кб, 520x277
516 1294467
Анончики, я тут подучил Java, с ванильной проблем нет - всю хуйню, в том числе треды, функциональщина, дженерики - во всем этом разбираюсь, бодро решаю задачки на https://codingame.com

Вопрос в другом - для трудоустройства мне везде говорят что нужна поебота под названием Spring (и еще Hibernate говорят не будет лишним). А вот тут я вообще не что за хуета и с чем едят.

Пните в нужном направлении - курсы я разные нагуглил, на торрентах и вообще, но хотелось бы проверенное что-нибудь и актуальное, чтобы с практикой (без практики всё забывается за неделю).

Спасибо, няши.
517 1294472
>>294466
Ну чисто теоретически ты можешь сделать свой кастомный BeanPostProcessor, который будет после инициализации бина, через рефлексию проверять если у бина есть твоя аннотация, класть бин в коллекцию.
Как это реализовать? Собственно хуй его знает. Сам в такие кишки не лез, возможно вообще спизданул не то. Если разберешься что к чему, то напиши, а то интересно
518 1294473
>>294467
Ткач, Baeldung
519 1294476
>>294466
Так у тебя бин должен быть коллекцией или коллекция из бинов?
Если и то и другое:

>@Bean("ListBeanName")


>@Autowired


>public List<Clazz> getMotherFuckingBean(Clazz beanX, Clazz beanY, ..., Clazz beanZ) {


>List<Clazz> res = new ArrayList<>();


>res.add(beanX);


>res.add(beanY);


>//...


>res.add(beanZ);


>return res;


>}

520 1294477
>>294473
https://www.youtube.com/watch?v=3wBteulZaAs

Оно? 2015 год, еще актуально?
А то я как долбоеб начал Java Enterprise Beans учить по видео Специалиста, а оказалось это нахер не нужно.
521 1294478
>>294476
Вдогонку: хз, как там с vararg
522 1294480
>>294477
До сих пор остается пособием для джунов в ебаме.
523 1294481
Посоны, thinking in java сильно устарела? Просто очень зашел стиль. Я сам не совсем с нуля, знаю, что такое структуры данных, классы, наследование, полиморфизм, интерфейсы, параметризованные типы, короче, на уровне первого курса. То есть, это охуенно, когда книжка не совсем с нуля и сразу начинает давать специфику джавы. Только вот 2007 год смущае немного, там, небось, много воды утекло с тех пор.
524 1294485
Перекат >>1294482 (OP)
Перекат >>1294482 (OP)
Перекат >>1294482 (OP)
Перекат >>1294482 (OP)
Перекат >>1294482 (OP)
Перекат >>1294482 (OP)
525 1294486
>>294481
Очень много воды утекло. Ни дженериков, ни функционального программирования, ни фреймворков.
Если не с нуля - лучше фреймворки изучай, толку больше будет. Там же и стиль посмотришь.
526 1294548
>>294385
Люди говорят, что Шилдт - скучный и нечитабельный.
Я это очень давно слышал и не раз.
Сам я его не читал за ненадобностью.

Вот, и тут, например, пишут, что Хорстман лучше:
https://www.reddit.com/r/java/comments/7oip71/book_choice_schildt_vs_horstmann/

Тут ещё многое зависит от того, что ты уже знаешь/умеешь, и от личных склонностей. Выбери сам.
527 1294586
>>294548
гляну обе а там решу спасибо большое анон
528 1294755
>>294480
пардон, а что такое ебама?

https://www.youtube.com/watch?v=9hdR048xBX8
529 1295093
>>294288
Прочитал и Шилдта и Хорстмана. Сейчас перечитываю по второму кругу некоторые моменты спустя полгода. Так вот Шилдт лично мне заходит на порядок легче.
530 1295094
>>294467
Выше в треде была книжка. Параллельно такая последовательность: "Спринг Юрий Ткач" и "letscode springboot"
531 1295994
>>294755
ЕРАМ скорее всего , галера не с лучшей репутацией в IT кругах
cat3.png281 Кб, 429x429
532 1297892
Господа, кто-нибудь пытался пристроить ассемблерные вставки в жабу? И если да, то как это можно устроить путем наименьшей ебли? Надеюсь, что jni через какие нибудь плюсы, это не наименьшая ебля
533 1298295
js!
534 1298602
>>288035
ИлИлоо
rps.png27 Кб, 276x260
535 1300859
>>292469
и смог мимо пройти не
536 1301642
>>292469
стеком
Тред утонул или удален.
Это копия, сохраненная 11 декабря 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски