Java Developer – Telegram
Java Developer
15.8K subscribers
1.86K photos
136 videos
2 files
2.07K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4511💯10👍1
2
Что выведет код сверху?
Anonymous Quiz
6%
0
8%
1
52%
3
7%
-4
26%
Ошибка компиляции
👍106
👩‍💻 Волшебные ссылки теперь в Spring Security

В статье рассматривается новая функция в Spring Security — поддержка волшебных ссылок (magic links) для аутентификации.

Автор объясняет, как настроить одноразовые токены и интегрировать их в приложение для упрощения процесса входа пользователей.

Читать статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥52
Please open Telegram to view this post
VIEW IN TELEGRAM
😁41🤣28🔥5🏆3👍2
Задача с LeetCode «Add Digits №258»

Дано целое число num, многократно складывайте все его цифры, пока в результате не останется только одна цифра, и верните ее.

Пример 1:
Входные данные: num = 38
Вывод: 2

Пример 2:
Входные данные: num = 1701
Вывод: 9

📱 Java Developer | #задача #easy
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
👩‍💻 Как работает EnumMap?

EnumMap — это специализированный класс для работы с enum-ключами, который обеспечивает высокую производительность и экономию памяти. Его основные особенности:

▶️ EnumMap хранит ключи в виде массива, что позволяет эффективно использовать память и выполнять операции добавления, поиска и удаления за O(1).

▶️ Элементы в EnumMap автоматически упорядочиваются в соответствии с порядком значений в enum, что удобно для ситуаций, где важен порядок.

❤️ — если было полезно
💯 — если уже знал

📱 Java Developer | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
55👍11🔥4💯3
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥34😁137🤣6💯2
6👍3
Под какой буквой правильный ответ?
Anonymous Quiz
16%
A
25%
B
7%
C
52%
D
9👍5🤔3
👩‍💻 JOOQ vs Hibernate: ключевые различия

В статье рассматриваются особенности использования JOOQ и Hibernate в проектах на Java и их подходы к работе с данными.

Автор объясняет, как JOOQ обеспечивает статическую типизацию для работы с SQL, а Hibernate управляет объектно-реляционным отображением, и почему они не являются взаимозаменяемыми.

Читать статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍134
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3691
Вопрос с собеседования

Что такое HTTP?

Ответ: HTTP (Hypertext Transfer Protocol) — это протокол, обеспечивающий обмен данными между клиентом (например, браузером) и сервером. Он основан на запросах (GET, POST, PUT, DELETE) и ответах. По нему можно передавать текст, мультимедиа и другую информацию.

📱 Java Developer | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥92
💻 Оптимизация SQL запросов

Оптимизация SQL-запросов — важная часть работы любого разработчика, особенно если дело касается больших данных.

В статье вы узнаете, как ускорить выполнение запросов с помощью конструкций IN, JOIN и ANY(ARRAY[]), а также других методов, позволяющих сократить объем вычислений и улучшить производительность.

Читать статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥3👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣64😁8💯1🏆1
👩‍💻 Поиск потенциальных уязвимостей в коде

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

Автор объясняет, как с помощью аннотаций и анализа потоков данных выявлять дефекты безопасности, такие как XSS, XXE и SQL-инъекции, анализируя исходный код без необходимости его выполнения.

Читать статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
😁64👍3🔥21
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣54😁14👍9💯1
Задача с LeetCode «Perfect Squares №279»

Дано целое число n, верните наименьшее число идеальных квадратных чисел, сумма которых равна n.

Идеальный квадрат - это целое число, равное квадрату целого числа (например, 1, 4, 9 и 16).

Пример 1:
Входные данные: n = 12
Вывод: 3
Пояснение: 12 = 4 + 4 + 4

Пример 2:
Входные данные: n = 13
Вывод: 2
Пояснение: 13 = 4 + 9

📱 Java Developer | #задача #medium
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43
⌨️ Почему стоит избегать ветки default в switch?

На первый взгляд, ветка default в switch кажется удобным решением для обработки "всего остального". Но на самом деле это может стать источником ошибок. Разберем три подхода: с default, без нее и с выбросом исключения.

▶️Пример с веткой default

default часто используют для обработки неожиданных случаев. Это позволяет избежать ошибок компиляции, но может скрыть проблемы:
switch (type) {
case ADMIN -> handleAdmin();
case USER -> handleUser();
default -> logUnexpectedType();
}

Если добавить новое значение, например, GUEST, оно автоматически попадет в default. Это может привести к некорректной работе, если логика в default не подходит для нового значения.


▶️Пример без ветки default

Иногда лучший способ избежать проблем — вовсе отказаться от ветки default. Это особенно полезно, если вы работаете с перечислениями (enum).
switch (type) {
case ADMIN -> handleAdmin();
case USER -> handleUser();
}

Такой код заставит компилятор проверять, учтены ли все значения. Если вы забудете про новое, программа не соберется, что поможет выявить ошибку на этапе разработки.


▶️Пример с выбросом исключения

Если вы уверены, что ветка default необходима, используйте ее для выброса исключения:
switch (type) {
case ADMIN -> handleAdmin();
case USER -> handleUser();
default -> throw new IllegalArgumentException("Unexpected type: " + type);
}

В этом случае, если появится новое значение, программа не выполнит некорректную логику, а остановится с явной ошибкой. Это поможет быстрее найти и устранить проблему.


Подытожим: Ветка default может скрывать ошибки и усложнять поддержку. Лучше обрабатывать все варианты явно или использовать default только для выброса исключений. Такой подход сделает код безопаснее и надежнее.

❤️если было полезно

📱 Java Developer | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
43👍13🔥4
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩23😁14🤣51👨‍💻1
Вопрос с собеседования

Из чего состоит HTTP-запрос?

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

📱 Java Developer | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍153🔥3