Чашечка Java
Открыть в Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
Больше8 567
Подписчики
-224 часа
-107 дней
-2730 день
Архив постов
8 567
Интегрируем ресивер Триколора с «Домом с Алисой» с помощью Java и Spring
Привет! Меня зовут oldzoomer, и я хочу рассказать, как я подключил приёмник Триколор к экосистеме Яндекса, чтобы управлять им голосом через Алису. Всё сделано на Java 21, Spring Boot и официальном Stingray TV API - без хаков и модификаций прошивки.
Читать: https://habr.com/ru/articles/959178/?utm_campaign=959178
@a_cup_of_java | Другие наши каналы
8 567
Как @Component в Spring управляет зависимостями
В статье объясняется, что аннотация @Component помечает класс как bean, Spring сканирует такие классы и создаёт экземпляры для автосвязывания. @Component — основа для @Service, @Repository и @Controller, важная деталь DI в Spring.
Подробности: http://www.java67.com/2023/04/what-is-component-annotation-in-spring.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Лучшее по Java и Spring Boot
В статье Java67 объясняют, почему Spring Boot не находит сущности (ошибка «not a managed type») и предлагают решения: переместить entity в главный пакет, переименовать пакет или явно задать сканирование через @EntityScan (напр. @EntityScan("com.java67.entity")).
Подробности: http://www.java67.com/2023/04/how-to-fix-not-managed-type-exception.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Топ-аннотаций Spring: что важно знать
В статье на Java67 — обзор ключевых аннотаций Spring, что они делают и почему их стоит изучить Java‑разработчику. Упомянуты также бесплатные курсы и ресурсы для практики.
Подробности: http://www.java67.com/2018/11/top-10-spring-framework-annotations-for-java-developers.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Совместимость в Java: что может пойти не так?
Совместимость — фундаментальная характеристика платформы Java, обеспечивающая стабильную работу программ при эволюции JDK. Однако понятие «совместимость» многогранно: исходный код, бинарные файлы и поведение программ оцениваются по разным стандартам.
В новом переводе от команды Spring АйО разберем три ключевых категории совместимости: на уровне исходного кода, бинарную и поведенческую, а также рассмотрим нюансы сериализуемой и миграционной совместимости.
Читать: https://habr.com/ru/companies/spring_aio/articles/956824/?utm_campaign=956824
@a_cup_of_java | Другие наши каналы
8 567
Тупик
Мат рождается в душе. Больше всего его рождается когда сталкиваешься с чем-то похожим на <подставь. Инструмент с прекрасными целями и задачами постепенно превращается во все больший и больший кусок г.. в котором приходиться копаться. Ощущаешь себя жужжащей мухой, летающей вокруг по необходимости.
Когда трава была зеленее, когда мы сильно боролись за каждый такт процессора, тратя на это наше время, которое мы тогда не очень ценили, все было в какой-то мере проще.
Если тебе нужна была фича, ты ее делал сам.
Или ты искал уже реализованную фичу, и прикручивал к своему коду.
Больше времени уходило на поиск. Не всегда можно было найти.
Сейчас все поменялось.
Подключение новой фичи чаще всего присоединяет к твоему коду 100500 дополнительных фиговин, которые мало того, что чаще не нужны, но и которые мешают запустить твой код.
Они подключаются по дефолту сами, и ты ищешь как их отключить. Но так как библиотеки постоянно меняются, это не так просто. Сколько раз подключал <подставь, ещё не разу не было одинакового кода. Постоянно меняются названия методов, их параметры, типы.
Раньше было просто. Возьмем для примера <подставь. Ты подключал и говорил ему, что нужно делать в первом случае, что во втором, что в третьем.
Сейчас же так просто не работает. Все стало сложнее. Ты указываешь доступный всем метод по старинке, но не тут то было. Клиенты получают в ответ фигу. Ты думаешь, что поменялся синтаксис, ищешь новые незадеприкейчаные методы (которых по количеству уже меньше, чем задеприкейчаных), но все равно клиенты получают фигу. Один и тот же код разрешает пользователям работать с одними запросами, но не разрешает с другими. Уверен, что это как-то объясняется. Просто подключается ещё куча бинов по дефолту, с доп параметрами по дефолту, и т.д. Идеология упрощения.
Но то, что прямо игнорируется команда разработчика, это уже перебор.
Читать: https://habr.com/ru/articles/958462/?utm_campaign=958462
@a_cup_of_java | Другие наши каналы
8 567
JUnit 6: Java 17, Kotlin suspend и fail-fast
JUnit 6 вышел: Java 17 минимум, нативная поддержка Kotlin suspend, API CancellationToken и --fail-fast, встроенная поддержка JFR, FastCSV вместо univocity, Vintage депрекейтед. Подробнее — статья InfoQ.
Подробности: https://www.infoq.com/news/2025/10/junit6-java17-kotlin/
#en
@a_cup_of_java | Другие наши каналы
8 567
Что такое ANR и как с ним работать правильно
ANR — это не просто “зависание”, а молчаливый краш, который напрямую бьёт по удержанию пользователей. В статье разбираю, как работает механизм ANR, какие ошибки его вызывают, как анализировать traces.txt, какие библиотеки помогают отслеживать блокировки (ANR-WatchDog, ANR-Spy, Firebase Crashlytics), и как построить процессы, чтобы QA-команда научилась ловить их ещё до релиза.
Читать: https://habr.com/ru/articles/958278/?utm_campaign=958278
@a_cup_of_java | Другие наши каналы
8 567
Обзор Java: OpenJDK, Spring RC, Jakarta EE и крупные релизы
InfoQ: двое новых кандидатов OpenJDK (Vector API, jcmd), первые RC Spring Framework 7.0 и Spring Data 2025.1, Jakarta EE 12 M1, WildFly 38, Testcontainers 2.0, обновления Payara и Micrometer. Читайте статью на InfoQ.
Подробности: https://www.infoq.com/news/2025/10/java-news-roundup-oct13-2025/
#en
@a_cup_of_java | Другие наши каналы
8 567
Кейс из production: Deadlock в асинхронном коде на Java
Недавно наткнулся на коварную проблему, которая отлично демонстрирует важность правильной конфигурации пула потоков при работе с асинхронным программированием. Эта ситуация может возникнуть в любом проекте, где используются вложенные асинхронные операции, и её последствия могут быть катастрофическими для production-системы.
Читать: https://habr.com/ru/articles/958166/?utm_campaign=958166
@a_cup_of_java | Другие наши каналы
8 567
Кейс из production: Deadlock в асинхронном коде на Java
Недавно наткнулся на коварную проблему, которая отлично демонстрирует важность правильной конфигурации пула потоков при работе с асинхронным программированием. Эта ситуация может возникнуть в любом проекте, где используются вложенные асинхронные операции, и её последствия могут быть катастрофическими для production-системы.
Читать: https://habr.com/ru/articles/958166/?utm_campaign=958166
@a_cup_of_java | Другие наши каналы
8 567
Всероссийский ИТ-чемпионат МТС True Tech Champ продлевает регистрацию на алгоритмический трек
Этап продлили до 23:59 Мск 23 октября.
Успей присоединиться к чемпионату, решить задачи и побороться за призовой фонд — 2 750 000 рублей.
Шесть призовых мест:
• 1 000 000 рублей за первое место;
• по 500 000 рублей за два вторых места;
• по 250 000 рублей за три третьих места.
О соревновании:
— Отборочный этап и регистрация до 23 октября. Онлайн. Три задачи. Чтобы их решить, нужны базовые знания теории и языков программирования
— Полуфинал 24 октября — 30 октября. Онлайн. Тебе предстоит решать алгоритмические задачи и работать со структурами данных. Чтобы успешно справиться с заданиями, пригодится опыт решения олимпиад.
— Финал 21 ноября в МТС Live Холл. Офлайн. До 240 лучших участников попадут в офлайн-финал и покажут мастерство лайв-кодинга.
Финал пройдет в формате масштабного ИТ-фестиваля с шоу-битвой роботов, где гостей ждет захватывающая сюжетная линия, кодерские челленджи, на сцене выступят международные и российские ИТ-эксперты, а вечером участников ждет афтепати со звёздными хэдлайнерами.
Регистрация по ссылке.
Это #партнёрский пост
8 567
Java 25: упрощённые исходники
Язык Java развивается. Не так давно вышла очередная версия, в которой, помимо всего прочего, вышло любопытное обновление языка (JEP-512).
Изменения, в язык внесенные, делают его более пригодным и удобным для обучения и написания коротких программ.
В этой статье хочу рассказать о том, как это сделано. Для этого заглянем в компилятор и немного коснемся теории создания языков.
Читать: https://habr.com/ru/companies/axiomjdk/articles/952826/?utm_campaign=952826
@a_cup_of_java | Другие наши каналы
8 567
Что такое ContextLoaderListener в Spring MVC?
В статье объясняют роль ContextLoaderListener: он создаёт root ApplicationContext, загружает сервисные и DAO-бины, работает вместе с DispatcherServlet и может быть настроен через web.xml или Java Config (Servlet 3.0+). Подборка по Spring и Hibernate: курсы, туториалы и вопросы для собеседований
В статье собраны полезные курсы, туториалы и списки интервью‑вопросов по Spring, Spring MVC, Spring Boot и Hibernate — пригодится для подготовки к собеседованию и повышения практических навыков. Обзор: Spring Boot, микросервисы и курсы
Статья собирает практичные гайды, примеры, решения ошибок и подборки курсов по Spring, Spring Boot и микросервисам — полезно Java‑разработчикам, ищущим быстрые практические инструкции.
Подробности: http://www.java67.com/2019/05/contextloaderlistener-in-spring-mvc-10.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Топ-5 аннотаций Spring Cloud для Java‑микросервисов
На Java67 объясняют ключевые аннотации: @EnableConfigServer, @EnableEurekaServer, @EnableDiscoveryClient, @EnableCircuitBreaker и @HystrixCommand. Кратко о назначении, примерах и как они упрощают разработку облачных микросервисов на Spring. Навигатор по темам Java и Dev
В статье собран обширный индекс материалов на Javarevisited: Java, Spring и Spring Boot, микросервисы, базы данных, алгоритмы, инструменты и онлайн‑курсы. Полезно для поиска материалов и подготовки к интервью. Полный архив блога и подписка
На сайте собран подробный архив публикаций по годам и месяцам, есть ссылки на политику конфиденциальности и условия, форма подписки и заметка о копирайте Soma Sharma 2021–2025. Полезно для поиска старых материалов и навигации по контенту.
Подробности: http://www.java67.com/2018/12/top-5-spring-cloud-annotations-for-java.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Как отключить кэш браузера в Spring MVC (Cache-Control)
В статье показано, как с помощью WebContentInterceptor в Spring MVC выставлять заголовки Cache-Control/Expires, чтобы запретить кэширование динамических страниц (например страницы входа) и повысить безопасность приложения; приведён пример конфигурации. Полный справочник Java и Spring для подготовки к интервью
В статье собраны ключевые темы, туториалы и подборки курсов по Java, Spring, микросервисам и сопутствующим технологиям — полезно для обучения и подготовки к собеседованиям. Архив блога и контактная информация — Статья представляет страницу архива с перечислением записей по годам и месяцам, ссылками на политику конфиденциальности и условия, формой подписки и пометкой авторства Copyright by Soma Sharma 2021–2025. Полезно для поиска старых публикаций.
Подробности: http://www.java67.com/2017/07/how-to-prevent-browsers-from-caching-static-content-using-spring-framework-mvc.html
#en
@a_cup_of_java | Другие наши каналы
8 567
@PropertySource в Spring: подключаем свойства просто
В статье объясняется, как аннотация @PropertySource добавляет PropertySource в Environment и позволяет через @Value и Environment читать application.properties (пример с DataConfig) и переопределять значения переменными окружения. Гид по Spring и Hibernate
Обзор подборки материалов: руководства, вопросы для собеседований, книги и курсы по Spring, Spring Boot, MVC и Hibernate, а также темы кэширования и сертификации. Поможет быстро подготовиться к собеседованию и выбрать полезные ресурсы. Большая подборка уроков и решений по Spring Boot
В статье собраны руководства и решения типичных задач: конфигурация, REST/JSON, CORS, безопасность, несколько источников данных, тестирование, новые фичи Spring Boot/6, отладка SQL, микросервисы и исправления частых ошибок.
Подробности: http://www.java67.com/2021/10/what-is-property-source-in-spring.html
#en
@a_cup_of_java | Другие наши каналы
8 567
Kafka для начинающих: откуда такой спрос и зачем нужна эта технология
Почему REST API не подходит для общения микросервисов?
Разбираем на примере интернет-магазина, как Kafka решает проблемы синхронной коммуникации, масштабирования и отказоустойчивости.
Простыми словами о топиках, партициях, consumer groups — для начинающих разработчиков.
Читать: https://habr.com/ru/articles/957824/?utm_campaign=957824
@a_cup_of_java | Другие наши каналы
8 567
Числовой тип данных с плавающей точкой float IEEE 754
Как устроен формат кодирования с плавающей точкой, что он из себя представляют и где может использоваться.
Читать: https://habr.com/ru/articles/957822/?utm_campaign=957822
@a_cup_of_java | Другие наши каналы
8 567
VibeCode. Как не назови все равно полетит
Plain Text vs XML or Markdown: на чём писать промпты для ИИ‑кодера?
Структура — это новый язык общения с ИИ. Особенно когда дело касается кода.
Есть миф: чтобы попросить ИИ написать код, достаточно набросать запрос в чат «как есть». Plain text, без правил. Сработает? Иногда. Будет эффективно? Редко.
Почему ИИ «понимает» структурированный промпт (с тегами, отступами, чёткими блоками) лучше, чем простой текст?
Читать: https://habr.com/ru/articles/957794/?utm_campaign=957794
@a_cup_of_java | Другие наши каналы
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
