Григорий Кислин @gkislin
Автор онлайн обучения Java: https://javaops.ru
Information
- Rating
- Does not participate
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity
Specialization
Specialist
Lead
Java
Git
JavaScript
Training
Coaching
Interview
Team recruitment
IT consulting
ключ и секретный ключ приложения нужны только для refresh roken
все остальное- это уже извращенная реализация
Нет. По одному Refresh token вы получаете Access token-ы и только у них есть время жизни.
Гарантированное трудоустройство это обычно миф. Почитайте отзывы участников. Попадаешь в их базу, могут у себя ментором пристроить на 40тр.
Вот как раз по теме, подробнее: https://blog.byndyu.ru/2009/10/solid.html
По поводу консоли - это скорее учебная фича, редко кто на проде оставит.
А вот по поводу TCP сервера интересно. Можете дать пример злоумышленной строки коннекта?
При чем тут Java и при чем тут Open Source ??? Типа на другом языке или в коммерческом продукте такую дыру принципиально не смогли сделать? Я имею в виду не механизм JNDI, а саму задумку, реализации возможно разные.
Вот огромное количесво шумихи, куча мемов, логи видел на приложения с "проверкой" на уязвимость и еще нигде не увидел ни одной публикации про постадавших. Кто-то может знает?
Корпорации постарались раздуть это себе на пользу - постоянные нападки на опен сорс с совершенно нелепыми аргументами. Мне посчасливилось пережит 2 аудита безопасности приложений у компаний - лажа жуткая. Я не говорю, что все такие, но открытый код дает гораздо больше гарантий, мое мнение. Над чем действительно стоит поразмыслить - КАК такую дыру сделали в продукте и КАК ее не увидели с 2013 г....
Тут простое правило - резюме должно быть на языке вакансии
Свою подбоку по резюме сюда собираю: https://github.com/JavaOPs/topjava/blob/master/cv.md#составление-резюме
Поправка: - на стажировке у нас 133 теста, у меня выполняются за 18 секунд.
Все так, по умолчанию кэширует. На достаточно скромной машине порядка 100 тестов в минуту через
MockMvc
меня устраивает.Задание только для геймдев индустии
Именно поэтому я написал - "Я предпочитаю"
В Spring Boot есть большое количество подходов к тестированию: https://javaops.ru/view/bootjava/lesson06#test
Все они имеют право на использование.
Это неверно. При POST надо проверять
id==null
объекта, а при PUT соответствие id в URL и в объекте в теле запроса (null допускается). База этого не сделает и проверка должна быть именно в контроллере- он отвечает за проверку входных данныхЯ именно об этом- не надо camelCase и двойных кавычек вместе с ними
Спасибо за плодовитость комментариев:)
6.4 Я в курсе, что в загруженных entity при изменении полей
save
не нужен. Речь идет о логике, когда ради экономии пары строчек Java люди объединяют save и update примерно так:if(updateCondition)
repository.delete(entity)
}
repository.save(entity)
Спасибо за комментарий! Поправил на "востребованном на рынке стеке ". Действительно, если современный воспринимать как самый передовой, то это не Spring Boot. А популярность фреймворка легко оценить для России в вакансиях на hh или по обзорам: https://www.jrebel.com/blog/2021-java-technology-report, https://snyk.io/jvm-ecosystem-report-2021/ - Spring Boot - 58-62%, Dropwizard 4%-9%, Micronaut 4%-5%. Dagger отсутствует.
Spring Data - это работа с БД по умолчанию в Spring Boot (причем не только с реляционными). Поэтому что "точно устарело" и JOOQ популярнее- категорически не соглашусь. Ну и еще раз именно про тестовые приложения на вакансии - чем у вас все будет стандартнее для разработки и совпадать со стеком компании, тем выше оценка.
Мораль - становитесь хорошими специалистами, чтобы сразу отсеивать такие компании.
Книги обязательны как дополнение и как саморазвитие, когда уже трудоустроены. Если вы переходите, например в Java, с другого языка - в принципе можно обойтись самостоятельным изучением. Я бы порекомендовал только не книги для начала, а бесплатные курсы, которых много. Написать свой проект перед трудоустройством, для Java на Spring Boot, считаю обязательно. Только при кодировании начинаешь понимать, что это совсем не то, что читать книгу.
Вот пример описания и комментариев выпускного проекта у нас: https://github.com/JavaOPs/topjava/blob/master/graduation.md
26 замечаний, причем все они по реальным ошибкам участников. И это только основные ошибки. Стажировка, особенно с ревью кода - на мой взгляд кратчайший путь к хорошей ЗП. Только выбирать нужно правильно, выбор сейчас большой. Обычно первые занятия открытые - можно оценить уровень обучения и интерес своего участия в ней.
По уровню ЗП - на Украине у синьора сейчас средняя 6K$. Мы отстаем, но думаю, что чз несколько лет выйдем на этот уровень.
Решит скорее не проблему, а правильное использование стримов + избыточный код, за что вы ратуете в этой статье. +нет необходимости создавать коллекцию.
после
peek
будет то же самое, что и вfor
По тестированию Spring-Boot я сделал небольшой обзор: https://javaops.ru/view/bootjava/lesson06#test
Результаты json из контроллеров десериализую в объекты и сравниваю через AssertJ — просто и быстро.