Java Developer
15K subscribers
2.09K photos
162 videos
13 files
2.4K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

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

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

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
👩‍💻 Spring Batch наконец-то подружился с MongoDB

В Spring Boot 4.1 появилась полноценная поддержка MongoDB в качестве JobRepository.

В статье показали полноценный пример с ETL-пайплайном, Docker Compose, PostgreSQL, MongoDB и наблюдаемостью через Grafana.

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

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2
Вопрос с собеседования

Работает ли @Transactional при вызове метода внутри того же класса?

Ответ: Нет. Если метод вызывается напрямую внутри того же класса, @Transactional не сработает.

Это происходит потому, что Spring управляет транзакциями через AOP-прокси, которые перехватывают только внешние вызовы. Внутренний вызов обходит прокси, поэтому транзакция не создаётся.


Решить проблему можно с помощью self-injection или вынести транзакционный метод в отдельный Spring-компонент.

tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍75🔥2
👩‍💻 Автоматический маппинг объектов в Java

Преобразование Entity ↔️ DTO — одна из самых рутинных задач в backend-разработке.

ModelMapper автоматизирует этот процесс, поддерживает сложные объекты, кастомные правила и помогает избавиться от десятков строк однотипного кода.

Ссылка на либу

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍4🔥3
Вопрос с собеседования

В чём разница между SOA и микросервисами?

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

Микросервисы можно разрабатывать, обновлять и развёртывать отдельно друг от друга. Для взаимодействия они используют лёгкие протоколы (REST, gRPC), что делает систему более гибкой и удобной для масштабирования.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3🔥3💯1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Нашли настоящую энциклопедию по Java

Important Java Concepts — это репозиторий, в котором собрали всё самое важное для Java-разработчика.

Здесь есть теория, примеры кода, многопоточность, коллекции, паттерны проектирования, алгоритмы, LeetCode и реальные вопросы с технических интервью.

Ссылка на репозиторий

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103🔥3
Вопрос с собеседования

Что такое идемпотентность?

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

Например, если отправить один и тот же запрос один или десять раз, конечное состояние системы останется одинаковым. Это особенно важно при работе с HTTP API, обработке повторных запросов и распределёнными системами.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥65👍5
👩‍💻 Как собрать своего AI-агента на Java

Spring получил мощный набор инструментов для работы с LLM — теперь AI-агентов можно создавать прямо внутри JVM-приложений.

В связке Spring AI + MCP:
⚡️ LLM выбирает нужное действие;
⚡️ Java выполняет его через безопасные инструменты;
⚡️ бизнес-логика остаётся в вашем Spring-приложении.


В статье разбирают реальный подход для продакшена: MCP-инструменты, безопасность, обработку ошибок и архитектуру AI-агентов.

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

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍2🔥2🤯1
🔥 Скоро собес на Java? Забери вопросы заранее

Готовишься в 👉 Яндекс, Сбер, ВК, Альфа, МТС, Т1 Иннотех или другие IT компании?

Есть канал, который экономит НЕДЕЛИ подготовки.

📱 Java Jub — гайды под конкретную компанию: реальные вопросы с актуальных собесов, разбор ответов, roadmap. Не «100 вопросов по Java», а точечно под твою вакансию.

📈 6 человек уже прошли собес в ФИНТЕХ по этим гайдам — совпадение вопросов до 70-95% 🚀

🤖 Выбираешь свою компанию и сразу забираешь гайд с вопросами:
Яндекс · Сбер · ВК · Альфа · МТС · Т1 Иннотех и другие 💼

👇 Скоро собес? Забирай вопросы сейчас
⚡️ Java Jub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53😎1
Вопрос с собеседования

Как работает паттерн Observer?

Ответ: Observer позволяет объектам подписываться на изменения другого объекта и получать уведомления при изменении его состояния.

Главный объект (Subject) не знает деталей обработки событий — он просто сообщает всем подписчикам о произошедшем изменении.


Такой подход уменьшает связанность кода и широко применяется в событийных системах.

tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍92🔥2
👩‍💻 Record вместо обычного POJO

Раньше, чтобы сделать простой класс-носитель данных, приходилось писать десятки строк boilerplate-кода: конструктор, геттеры, equals(), hashCode(), toString().

Начиная с Java 14 всё это можно заменить одной строкой — идеально подходит для DTO, объектов-значений и коротких структур данных, где не нужна сложная логика.

tags: #обучение

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍105🔥1🤣1
Вопрос с собеседования

Какие поля не сериализуются через Serializable?

Ответ: Не сериализуются поля, помеченные ключевым словом transient, а также статические (static) поля, поскольку они не относятся к состоянию объекта.

Кроме того, если объект содержит поле с несериализуемым типом, при сериализации будет выброшено NotSerializableException.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101🔥1
👩‍💻 Изучаем паттерны проектирования на практике

Java Design Patterns — это большая коллекция шаблонов проектирования с готовыми реализациями на Java.

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

Ссылка на репозиторий

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥1
👩‍💻 Что нового в JDK 27, Spring Boot 4.1 и Hibernate 8.0

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

Обзор JDK 27, Spring Boot 4.1, Hibernate 8.0, а также полезные материалы по производительности, миграции проектов и современным практикам разработки.

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

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥21
👩‍💻 Годный репозиторий для знакомства с MCP

Если изучаете Model Context Protocol (MCP) или хотите написать собственного AI-агента, этот репозиторий стоит сохранить.

Внутри:
‼️ Официальные реализации MCP-серверов на Java и Kotlin;
‼️ Готовые примеры для создания собственных инструментов и интеграций;
‼️ Серверы от разработчиков платформ и участников сообщества.


Ссылка на репозиторий

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🔥1🤯1
👩‍💻 Разбираемся с аутентификацией в Spring Security

Если хотите разобраться, как устроена аутентификация в REST-приложениях на Spring, сохраняйте эту статью.

Автор показывает, как реализовать авторизацию через JWT, безопасно хранить пароли с помощью PasswordEncoder и защитить API средствами Spring Security.

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

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🤯3
Вопрос с собеседования

Чем бин (Bean) отличается от обычного объекта?

Ответ: Бин — это объект, которым управляет Spring-контейнер. В отличие от объекта, созданного через new, он поддерживает внедрение зависимостей (DI), управление жизненным циклом, AOP и различные области видимости (scope).

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


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Лайфхак для пользователей VS Code

Нашли расширение, которое избавит от вечного поиска нужной строки.

Highlight Row позволяет подсветить любую строку в редакторе и оставить её заметной. Особенно выручает при работе с логами, длинными конфигами и во время ревью кода.

Ссылка на расширение

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍1🔥1
Вопрос с собеседования

Зачем нужен native SQL в Spring Data JPA?

Ответ: Если JPQL не справляется с задачей, на помощь приходит native SQL.

Он позволяет использовать возможности конкретной базы данных, писать сложные запросы и гибко управлять их выполнением. Правда, за это приходится платить меньшей переносимостью между СУБД.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72🔥2
👩‍💻 Почему Reflection замедляет Java-код?

Reflection — мощный инструмент, но за его гибкость приходится платить производительностью.

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

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

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🔥1
Вопрос с собеседования

Можно ли создать два Singleton-бина в Spring?

Ответ: Да, если у бинов разные идентификаторы.

Spring позволяет зарегистрировать несколько singleton-бинов одного типа, если каждый из них имеет собственное имя. Полезно знать при работе с конфигурацией и dependency injection.

tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥1🤩1
💻 Управляем бэкапами баз данных через веб-интерфейс

Databasement — self-hosted инструмент, который помогает централизованно создавать, хранить и контролировать резервные копии баз данных.

Полезная находка для Java-разработчиков, которым нужен удобный способ управлять бэкапами без ручных скриптов и команд в терминале.

Ссылка на инструмент

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍711🔥1🤯1