Java Portal | Программирование
12.5K subscribers
1.09K photos
88 videos
35 files
942 links
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика

Связь: @devmangx

РКН: https://clck.ru/3H4WUg
Download Telegram
Как правильно обрабатывать ошибки в Spring Boot REST

Если ты делаешь REST-API на Spring Boot, важно не просто ловить исключения, а возвращать понятные ответы клиенту. Корректные HTTP-коды и осмысленные сообщения помогают быстрее понять, что пошло не так — будь то дубликаты записей, ошибки валидации или проблемы с аутентификацией.

В статье объясняется, как организовать централизованную обработку ошибок, какие статусы стоит использовать (400, 401, 404, 409, 500 и т.д.), и почему логирование играет ключевую роль в поддержке и быстром устранении проблем в проде.

Подробнее тут

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🌚1💊1
Ты правильно используешь коллекции в Java?

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

1. ArrayList

Идеально, когда:

Читаешь много, а пишешь мало.

Доступ к элементам по позиции (get(i)).

Почему? Внутри — массив. Чтение очень быстрое, но вставка или удаление в середине медленные, потому что нужно сдвигать элементы.

Используй для: каталогов, списков, которые почти не меняются, или результатов, которые создаются один раз и потом только читаются.

2. LinkedList

Идеально, когда:

Постоянно добавляешь или удаляешь элементы.

Не нужен прямой доступ к элементу по индексу.

Каждый элемент знает, кто перед ним и кто после, поэтому вставка/удаление быстрые, но поиск конкретного элемента медленный, так как нужно проходить список поэлементно.

Используй для: очередей, буферов или структур, где важен порядок, а не скорость доступа.

3. HashMap

Идеально, когда:

Нужно хранить пары ключ/значение.

Требуется быстрый доступ по ключу (как словарь).

Использует функцию хеширования для быстрого поиска. Если hashCode() реализован плохо, может работать медленно и потреблять больше памяти.

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

Перед оптимизацией спроси себя:

Много читаю и мало пишу? → ArrayList

Часто вставляю/удаляю? → LinkedList

Ищу по ключу? → HashMap

Нет универсально «лучшей» структуры. Есть та, которая подходит под твой способ доступа к данным.

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍104