Помните, мы недавно говорили о создании ID атрибутов в JPA? Появилась классная статья о работе с сущностями. Автор на конкретных кейсах разбирает преимущества JPA Buddy и рассказывает, как с помощью плагина сэкономить время и силы. Однозначно пригодится, если вы часто пишете для сущностей POJO-классы и используете Spring Boot и Spring Data JPA.
Telegram
Java
Создать ID атрибут в JPA довольно просто, а вот если ваша цель – разработать инструмент, чтобы не только писать код для определения ID, но и выявлять возможные проблемы, все становится чуть сложнее.
Статья поможет понять, что при разработке следует учесть…
Статья поможет понять, что при разработке следует учесть…
Большая шпаргалка по Java, чтобы не искать каждый раз ответ на интересующий вопрос по просторам интернета. Удобно, когда нужно быстро что-то вспомнить. Плюс, страница регулярно обновляется и дополняется.
Класс A не полностью реализует методы интерфейса B. Каким образом он должен быть определен?
Anonymous Quiz
4%
как final-класс
14%
как внутренний для другого класса
71%
как abstract-класс
2%
как private-класс
9%
как интерфейс
Core Java, Volume I―Fundamentals.pdf
45.4 MB
Первая часть одного из самых знаменитых изданий по Java.
📌 основы современного подхода к программированию;
📌 методики ООП и параллельного программирования;
📌 синтаксис и безопасность.
Если покажется сложноватой, можно попробовать начать с Эванса и Флэнагана, а к Хорстманну вернуться позднее.
Прикрепляю оригинал. Не читайте, пожалуйста, на русском, если не хотите видеть каркас коллекций Java вместо Java Collections Framework и другие переводческие приколы.
📌 основы современного подхода к программированию;
📌 методики ООП и параллельного программирования;
📌 синтаксис и безопасность.
Если покажется сложноватой, можно попробовать начать с Эванса и Флэнагана, а к Хорстманну вернуться позднее.
Прикрепляю оригинал. Не читайте, пожалуйста, на русском, если не хотите видеть каркас коллекций Java вместо Java Collections Framework и другие переводческие приколы.
В идеальном мире код пишут так, что комментарии излишни, но в реальности, увы, это невозможно. Поэтому нужно заботиться о том, чтобы комментарии мог понять любой разработчик на проекте. Дело не только в орфографии и грамматике, но еще и в формулировках – часто они оказываются туманными и только запутывают ситуацию.
Специально для таких случаев появился плагин Comment Lint. Он анализирует текст комментариев с помощью сервиса Glvrd и показывает, как их можно улучшить. В статье – подробности об использовании и примеры работы с комментариями.
Специально для таких случаев появился плагин Comment Lint. Он анализирует текст комментариев с помощью сервиса Glvrd и показывает, как их можно улучшить. В статье – подробности об использовании и примеры работы с комментариями.
Хабр
Улучшаем комментарии с помощью плагина Comment Lint
Часто бывает, что у вас запутанные комментарии в проекте? Или вы хотите сделать свою документацию понятным другим разработчикам? Тогда эта статья для вас. Предыстория Проверка на качество текста в...
При работе с микросервисами приходится учитывать кучу факторов. Разбираться в межсервисном взаимодействии лично я начал далеко не сразу: сложнее всего было подступиться к аспекту security, так как инфы на этот счет либо мало, либо она очень поверхностная.
Автор статьи столкнулся с похожей проблемой и, исходя из своего опыта, решил описать реализацию security на конкретной задаче. Использует Spring, OAuth2, JWT и Service Account.
Ну и за обложку отдельный плюс.
Автор статьи столкнулся с похожей проблемой и, исходя из своего опыта, решил описать реализацию security на конкретной задаче. Использует Spring, OAuth2, JWT и Service Account.
Ну и за обложку отдельный плюс.
Хабр
Security микросервисов с помощью Spring, OAuth2, JWT и Service Account
Не так давно я начинал свой первый проект с микросервисами и не знал как реализовать security. Сейчас информации по этому вопросу уже больше однако она не всегда актуальна и, как правило, не...
В какой переменной окружения хранятся несколько корневых каталогов иерархии пакетов в файловой системе компьютера?
Anonymous Quiz
8%
PACKAGEROOT
65%
CLASSPATH
14%
ROOT
7%
CLASSROOT
6%
PACKAGEPATH
Продолжая тему микросервисов: а как дела обстоят с интеграционным тестированием? Чем больше самих микросервисов и взаимосвязей между ними, тем острее необходимость проверять, как вообще работает система и насколько ее поведение соответствует ожиданиям.
В статье описан достаточно легкий способ создания интеграционных тестов для встраивания в CI/CD-процесс. А в комментариях порекомендовали nanocloud, чтобы написание интеграционных тестов можно было встраивать прямо в процесс разработки.
В статье описан достаточно легкий способ создания интеграционных тестов для встраивания в CI/CD-процесс. А в комментариях порекомендовали nanocloud, чтобы написание интеграционных тестов можно было встраивать прямо в процесс разработки.
Неплохие видеоуроки по Java Hibernate. Подробно освещены настройка конфигов, JPA, мапинг, а также разные запросы.
Кстати, на канале есть и другие материалы по Java (даже детальный разбор code conventions), а еще общая теория по ООП, так что рекомендую взять на заметку.
Кстати, на канале есть и другие материалы по Java (даже детальный разбор code conventions), а еще общая теория по ООП, так что рекомендую взять на заметку.
Переменные в Java делятся на 3 типа:
🔺 локальные переменные;
🔺 переменные экземпляра;
🔺 глобальные переменные.
При этом локальные переменные и переменные экземпляра нельзя объявлять как статические.
Сокрытие статических и нестатических переменных происходит по-разному, и его не следует путать с переопределением метода. Подробный разбор темы – в статье.
🔺 локальные переменные;
🔺 переменные экземпляра;
🔺 глобальные переменные.
При этом локальные переменные и переменные экземпляра нельзя объявлять как статические.
Сокрытие статических и нестатических переменных происходит по-разному, и его не следует путать с переопределением метода. Подробный разбор темы – в статье.
Хабр
Сокрытие и затенение переменных в Java
Краткое содержание В Java можно объявлять переменные в классе, методе, блоке или конструкторе. В зависимости от варианта объявления, у переменной могут быть разные области видимости в программе, а...
Какое из перечисленных выражений преобразует строковую переменную s к нижнему регистру?
Anonymous Quiz
2%
s.tolower();
5%
s.tolowercase ();
6%
s.toLower();
83%
s.toLowerCase();
4%
s.toLowercase();
При разработке API обычно мало задумываешься над тем, как дальше управлять жизненным циклом – это вообще происходит во вторую или в третью очередь. А вот когда-нибудь потом заниматься развитием API без предварительного планирования будет сложно.
Появился перевод статьи с простым пошаговым планом действий как раз на такой случай. Рассматриваются все возможные аспекты: от использования шлюза и реализации версий до миграции пользователей и тестирования в рабочей среде.
Появился перевод статьи с простым пошаговым планом действий как раз на такой случай. Рассматриваются все возможные аспекты: от использования шлюза и реализации версий до миграции пользователей и тестирования в рабочей среде.
Хабр
Пошаговое развитие RESTful API
Разработка интуитивно понятного и удобного RESTful API — непростая задача. Она даже может оказаться весьма сложной задачей, если это ваша первая попытка. Планирование управления жизненным циклом...
Объемная шпаргалка по коллекциям в Java, где коллекции сравниваются по параметрам:
🔹 на чем основана;
🔹 дубли;
🔹 null;
🔹 синхронизированность;
🔹 потокобезопасность;
🔹 тип итератора.
Помогает уложить в голове систему, ну или просто в случаях, когда нужно быстро определиться с выбором. В конце еще и типы итераторов подробно описаны (прикрепляю на картинке).
🔹 на чем основана;
🔹 дубли;
🔹 null;
🔹 синхронизированность;
🔹 потокобезопасность;
🔹 тип итератора.
Помогает уложить в голове систему, ну или просто в случаях, когда нужно быстро определиться с выбором. В конце еще и типы итераторов подробно описаны (прикрепляю на картинке).
Какие данные будут значением аргумента с индексом [1] метода main() при запуске программы MyProgramme.java инструкцией: java MyProgramme Some additional argues.
Anonymous Quiz
8%
java MyProgramme
8%
java
30%
MyProgramme
20%
Some
35%
additional