Чашечка Java
8.57K subscribers
3.88K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
JDK 25 выйдет в сентябре 2025 года с 18 новыми функциями, включая улучшения в языке Java, безопасности и производительности JVM. JDK 26 готовит поддержку HTTP/3 и удаление устаревшего Applet API. Главное для разработчиков — стабильность и оптимизация с новыми возможностями.

Подробности: https://www.infoq.com/news/2025/08/java-25-so-far/

#en

@a_cup_of_java | Другие наши каналы
Как работать с OpenSearch: обзор полнотекстового поиска и пример использования

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

Привет, Хабр! Меня зовут Евгений Ляшенко, я старший разработчик IBS. В эпоху, когда объемы данных растут с каждым днем, эффективный поиск информации становится критически важным для бизнеса и разработчиков. OpenSearch как мощный инструмент для полнотекстового поиска и аналитики предлагает гибкие решения для работы с большими массивами данных. Чтобы наглядно продемонстрировать его работу, я создал pet-проект с поиском по библиотеке книг и фильмов. Но сначала немного теории.


Читать: https://habr.com/ru/companies/ibs/articles/939780/?utm_campaign=939780

@a_cup_of_java | Другие наши каналы
Bitnami Secure Images: Прощание с Бесплатным Продом

Команда Spring АйО перевела статью про то, что не так давно, компания Broadcom, которая на данный момент в силу различных M&A сделок косвенно управляет компанией Bitnami, внесла существуенные изменения в политику поддержки docker образов.

Теперь не бесплатно!


Читать: https://habr.com/ru/companies/spring_aio/articles/939818/?utm_campaign=939818

@a_cup_of_java | Другие наши каналы
Работа с Binance REST API с помощью Java

В предыдущей статье мы рассмотрели основы парсинга данных в Java.

В этой статье мы пошагово разберём, как с помощью Java 11+ быстро отправлять HTTP GET‑запросы, получать JSON от Binance REST API и извлекать из него символ пары (symbol) и цену (price) — без сторонних зависимостей.

Также в статье мы рассмотрим обход блокировки запросов со стороны сервера.


Читать: https://habr.com/ru/companies/amvera/articles/939492/?utm_campaign=939492

@a_cup_of_java | Другие наши каналы
Обновления Spring: релизы второй milestone-версии Spring Boot, Security, Authorization Server, GraphQL и других компонентов включают исправления ошибок, обновленные зависимости и новые функции. Детали доступны в официальных заметках к релизам.

Подробности: https://www.infoq.com/news/2025/08/spring-news-roundup-aug18-2025/

#en

@a_cup_of_java | Другие наши каналы
Kafka Streams для начинающих. Потоковая обработка данных в мире Java

Привет, коллеги-разработчики! За всю историю человечества в разные эпохи  существовали определенные виды ресурсов, которые определяли наше развитие и эволюцию. В 19 веке главным ресурсом для человечества было золото, в 20 веке – нефть и газ, а в 21 веке этим ресурсом стала информация. В нашем быстро меняющемся мире, где данные льются рекой и эти объемы растут с невероятной скоростью, нам как разработчикам приходится постоянно искать новые подходы для эффективной работы. От финансовых транзакций и логов серверов до показаний IoT-сенсоров и кликов пользователей на веб-сайтах — информация поступает непрерывным потоком. Работать с ней в реальном времени становится критически важным для того, чтобы бизнес мог принимать своевременные решения и оставаться конкурентоспособным.

Итак, в этой статье мы разберемся в новомодной технологии для работы с данными – Kafka Streams и узнаем, что это, область применения, а также достоинства и недостатки.


Читать: https://habr.com/ru/articles/939872/?utm_campaign=939872

@a_cup_of_java | Другие наши каналы
Android. Starting Kivy App and Service on bootup. API 35

Это мини статья является дополнением к статье Android. Starting Kivy App and Service on bootup, в которой запускал сервисом kivy приложение на API 22 Android 5. Теперь будем запускать на последних версиях Android. C API 26 Android 8 и по текущий API 35 Android 15 который есть у меня, постигли изменения, которые необходимо внести для автостарта сервиса. Проверял работу на API 22...35.


Читать: https://habr.com/ru/articles/940534/?utm_campaign=940534

@a_cup_of_java | Другие наши каналы
Spring Modulith: проверяем границы модулей в монолите и события домена

Привет, Хабр!

Еще в C++20 появилась явная поддержка модулей в языке. Интересно, но в Java тоже давно искали похожее решение для упорядочивания больших монолитных проектов. Spring предлагает свой ответ – проект Spring Modulith, цель которого дать разработчику инструмент для построения модульного монолита. Он не делает всю работу, но помогает структурировать код по модулям, проверять архитектурные правила и организовывать взаимодействие между этими модулями.


Читать: https://habr.com/ru/companies/otus/articles/940314/?utm_campaign=940314

@a_cup_of_java | Другие наши каналы
Spring AI: новый уровень интеграции ИИ в Java-приложения. В статье рассказывается, как с помощью Spring AI использовать большие языковые модели, создавать интеллектуальных агентов и обеспечивать безопасность данных. Полезно для разработчиков, работающих с AI и Spring.

Подробности: https://www.infoq.com/presentations/spring-ai-framework/

#en

@a_cup_of_java | Другие наши каналы
💊1
Новое в мире Java: вышел второй релиз кандидат JDK 25 с 18 новыми функциями и долгосрочной поддержкой. Обновились Eclipse JNoSQL, Quarkus c патчами безопасности, Apache TomEE и Apache Camel с улучшениями совместимости и производительности.

Подробности: https://www.infoq.com/news/2025/08/java-news-roundup-aug18-2025/

#en

@a_cup_of_java | Другие наши каналы
ArchUnit против хаоса

Привет! Я Масгутов Руслан, архитектор в Т-Банке. Одна из моих задач — вести архитектурный надзор по техническим решениям. Проверка структуры проектов при ревью довольно быстро становится скучной рутиной, и появляется желание автоматизировать эту деятельность, чтобы освободить время для более интересных задач.

Расскажу, как мы используем ArchUnit для автоматизации архитектурного контроля. Покажу, как мы обернули правила в Gradle-плагин, встроили их в CI/CD, боремся с архитектурными отклонениями до того, как они попадают в pull request, и расскажу о возможности сбора архитектурных метрик.


Читать: https://habr.com/ru/companies/tbank/articles/940766/?utm_campaign=940766

@a_cup_of_java | Другие наши каналы
Stream Gatherers: кастомные промежуточные операции для Stream API

Привет, Хабр!

Когда Java 8 впервые подарила нам Stream API, мы все обрадовались ленивому функциональному стилю работы с коллекциями. Но хочется иногда большего. Вот, например, задача – пропустить из потока только по одному элементу каждого размера строки. Или разбить бесконечный стрим на окна фиксированного размера и обработать первые несколько таких окон. Казалось бы, чем проще: .filter, .map, .distinct… Но именно этих операций не хватало. До Java 24 набор промежуточных операций в Stream был фиксированным – map, filter, flatMap, distinct, sorted и т.д. – и расширить его было нельзя. Приходилось придумывать сложные ухищрения (например, оборачивать объекты в record с особым equals или собирать через collect, а потом резать список), чтобы решить элементарные задачи. В итоге код становился громоздким и неинтуитивным.


Читать: https://habr.com/ru/companies/otus/articles/940320/?utm_campaign=940320

@a_cup_of_java | Другие наши каналы
Хватит терять время! Ускоряем сборку с помощью Spring Test Profiler

Интеграционные тесты на Spring Boot могут тормозить разработку. Причина часто кроется в неэффективной работе с кэшем контекста Spring.

Spring Test Profiler — это инструмент, который поможет выявить узкие места и оптимизировать конфигурацию тестов. В новом переводе от команды Spring АйО мы рассмотрим, какие тесты вызывают повторную загрузку контекста, где конфигурации расходятся и как можно унифицировать окружение для значительного ускорения тестов.


Читать: https://habr.com/ru/companies/spring_aio/articles/940930/?utm_campaign=940930

@a_cup_of_java | Другие наши каналы
Почти ультимативный обзор Criteria API с продвинутыми возможностями Hibernate

Вам нужно создать сложный запрос к реляционной БД с изменяющимися параметрами?

В этой статье рассмотрим основные возможности Criteria API. Также рассмотрим более продвинутые вещи, например создание CTE и оконных функций, которые есть у Hibernate Criteria API. В статье много примеров, которые смогут помочь при написании запросов Criteria API на практике.


Читать: https://habr.com/ru/articles/941130/?utm_campaign=941130

@a_cup_of_java | Другие наши каналы
2👎1
AsyncAPI — Swagger для асинхронного API

Привет, Хабр! Меня зовут Александр Митин. Я Java разработчик в компании ИТ-холдинг Т1 с 15 летним опытом, из которых последние 5 лет работаю в финтехе. Мой любимый стек — Java Spring. Я хочу рассказать такое AsyncAPI, как работать со спецификациями, какие есть инструменты и поделюсь нашим опытом перехода на подход API First в наших системах.


Читать: https://habr.com/ru/companies/oleg-bunin/articles/940374/?utm_campaign=940374

@a_cup_of_java | Другие наши каналы
Spring Boot 4 и Spring Framework 7: Ключевые фичи и изменения

Уже в ноябре 2025 выходит Spring Boot 4 — масштабный релиз, построенный на фундаменте Spring Framework 7.0.0 и Jakarta EE 11. Это не просто очередное обновление, а важный этап в развитии всей Java-платформы: новые возможности для REST и безопасности, улучшенная работа с Kotlin и GraalVM, мощная поддержка облаков и нативных образов, а также инструменты для создания отказоустойчивых приложений.

🧠 Эта статья — больше, чем просто перевод: в ней собрано большое кол-во комментариев от экспертов Spring АйО.


Читать: https://habr.com/ru/companies/spring_aio/articles/941310/?utm_campaign=941310

@a_cup_of_java | Другие наши каналы
6
Жмых-жмых и в продакшен: как быстро написать админку

Всем привет, меня зовут Дмитрий Кремнев и я Java-разработчик в команде Jmix. Недавно на конференции смотрел доклад, в котором спикер рассказывал, как его команда справлялась с проблемой быстрого написания админок для внутренних сервисов. Сначала они реализовали дорогое самописное решение для своей команды, затем появилась идея масштабировать его и для остальных команд. Искали готовые альтернативы на рынке, которые удовлетворят все их бизнес-требования, но в итоге остановились на гибридном кастомном решении, основанном на low-code платформе. Проблемы, которые они решали мне показались очень знакомыми, ведь мы в команде тоже с ними сталкивались. В этой статье я хочу показать, как с помощью Jmix решаются типовые задачи при создании админок. Постараюсь быть конкретным, показать плюсы и ограничения.
Сделать красиво

Читать: https://habr.com/ru/companies/haulmont/articles/941668/?utm_campaign=941668

@a_cup_of_java | Другие наши каналы
👍3
Единый дистрибутив, JSpecify, Java 25 и новый Spring Debugger: это и многое другое в IntelliJ IDEA 2025.2

IntelliJ IDEA 2025.2 — это релиз, который уже вызывает горячие обсуждения в комьюнити. JetBrains сделали первые шаги в сторону единого дистрибутива, добавили поддержку свежих технологий вроде JSpecify и Java 25, а ещё представили инструмент, который может изменить подход к отладке Spring-приложений.


Читать: https://habr.com/ru/companies/haulmont/articles/941612/?utm_campaign=941612

@a_cup_of_java | Другие наши каналы
Поддержка Spring 7, Reactive Debugger, работа с БД и HTTP прямо в IDE: это и много другое в Amplicode 2025.2

Amplicode 2025.2 — это релиз, в котором мы закрыли десятки мелких раздражающих моментов, и усилили поддержку ключевых технологий — от Spring и Spring Data JDBC до Docker, Kubernetes и Terraform. А также сделали интеграцию с базами и HTTP-сервисами ещё более бесшовной.


Читать: https://habr.com/ru/companies/haulmont/articles/941604/?utm_campaign=941604

@a_cup_of_java | Другие наши каналы
RAG и векторные БД: НЕ Сизифов LLM на Java и Spring Ai

Привет! Меня зовут Бромбин Андрей, и сегодня я разберу на практике, что такое RAG-системы и как они помогают улучшать поиск. Покажу, как использовать Spring AI, векторные базы данных и LLM. Ты получишь теорию и пример реализации на Java и Spring Boot – от идеи до работающего сервиса. Без сложных формул – только чёткие объяснения и код.
Обновить резюме

Читать: https://habr.com/ru/companies/ruvds/articles/924100/?utm_campaign=924100

@a_cup_of_java | Другие наши каналы
1
xAI представила grok-code-fast-1 — свою первую ИИ-модель для кодинга и агентных задач

xAI выпустила grok-code-fast-1 — первую модель для кодинга и агентных задач. Она поддерживает TypeScript, Python, Java, Rust, C++ и Go, интегрирована в IDE и CLI, работает быстро (до 160 ток/с) и стоит дешевле конкурентов

Читать: «xAI представила grok-code-fast-1 — свою первую ИИ-модель для кодинга и агентных задач»

@a_cup_of_java | Другие наши каналы