Чашечка Java – Telegram
Чашечка Java
8.92K subscribers
3.84K photos
12 videos
56 files
6.24K links
Лучшие материалы по Java на русском и английском

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

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

Другие каналы: @tproger_channels
Download Telegram
Сравнение Grafana и Dimension-UI на задаче мониторинга истории активных сессий

Недавно рассказывал про мониторинг истории активных сессий в базах данных Oracle, PostgreSQL, ClickHouse и MS SQL Server с использованием desktop-приложения Dimension-UI (link). В комментариях @KPSB92 задал вопрос о преимуществах/отличиях связки exporter Prometheus/Grafana и Dimension-UI, решил оформить ответ в эту небольшую статью.

Итак, возьмем для примера просмотр данных активных сессий в базе данных PostgreSQL и сравним визуализацию в Grafana и Dimension-UI. Посмотрим работу с интерфейсами обоих систем в динамике с помощью скринкастов.
(трафик 21 Мб)

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

@a_cup_of_java | Другие наши каналы
DispatcherServlet в Spring MVC — роль и внутренняя работа

В статье объясняется, как DispatcherServlet выступает Front Controller: принимает все запросы, сопоставляет их с контроллерами через handler mappings, разрешает представления через ViewResolver и отправляет ответ. Полезно для подготовки к собеседованиям. Большой каталог по Java и JEE

В статье собран обширный каталог материалов: уроки и сравнения (JSP, Servlet, Struts), темы по Spring, Hibernate, коллекциям, сотни вопросов для собеседований и подборки курсов и книг для подготовки и практики. Полный путеводитель по Spring Framework

В статье — подборка примеров, уроков, курсов и решений для Spring/Spring Boot: аннотации, REST, микросервисы, тестирование, Spring Security, Actuator и ответы на интервью. Полезно для практикующих Java-разработчиков.

Подробности: http://www.java67.com/2017/06/what-is-use-of-dispatcherservlet-in-spring-mvc.html

#en

@a_cup_of_java | Другие наши каналы
Поиск работы в IT сломан. Я устал это терпеть и написал код, который играет против правил

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

Давайте по-честному. Искать работу в IT - это боль. Это не похоже на то, что нам обещали: интеллектуальные задачи, интересные проекты, уважение. Вместо этого мы получили бесконечный скроллинг hh.ru, вымученные сопроводительные письма и звенящую тишину в ответ.

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


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

@a_cup_of_java | Другие наши каналы
Ошибка ClassNotFoundException: ContextLoaderListener — как исправить

Кратко: причина в отсутствии класса org.springframework.web.context.ContextLoaderListener в CLASSPATH. Добавьте spring-web.jar (Spring 3+) или spring.jar (старые версии), проверьте Maven-зависимости/Deployment Assembly и очистите кэш Tomcat. Курсы и ресурсы: Java, Spring, DevOps

В статье собрана большая подборка курсов и туториалов по Java, Spring, Hibernate, DSA, MERN, Docker, Kubernetes и DevOps, включая бесплатные материалы и рекомендации для подготовки к интервью и сертификациям. Большая подборка материалов по Java и Spring Boot
В статье собраны руководства, примеры проектов, ответы на интервью, советы по микросервисам и исправления ошибок. Полезно для практики и подготовки к собеседованиям. Подробности в оригинальной статье.

Подробности: http://www.java67.com/2015/06/org.Springframework.Web.Context.ContextLoaderListener.html

#en

@a_cup_of_java | Другие наши каналы
Отправка email в Java через Spring — быстрый гайд

По материалам Java67: показано, как настроить JavaMailSenderImpl как bean, сформировать MimeMessage (from/to/cc/bcc, тема, HTML) и отправить письмо. Описаны также вложения и отправка HTML-контента. Большой каталог IT‑тем и материалов

В статье на блоге Javarevisited собран обширный перечень тем и ресурсов: Java, Spring, Python, ML, DevOps, интервью и курсы. Подойдёт для обучения и подготовки к собеседованиям. Читайте оригинал на сайте. Архив блога Soma Sharma — публикации по годам и месяцам

В статье собран архив постов 2012–2025 с числом записей за месяцы, есть разделы Privacy и Popular Posts, форма подписки и указаны авторские права — удобно для поиска материалов на сайте.

Подробности: http://www.java67.com/2019/10/how-to-send-email-in-java-using-spring.html

#en

@a_cup_of_java | Другие наши каналы
Вот чем займусь, если перестану писать код

Открыть бизнес? Пойти за мечтой? Уйти на пенсию и жить на пассивный доход? Или работать руками? Что делать вне IT? Пофантазировали и собрали мнения разработчиков.


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

@a_cup_of_java | Другие наши каналы
Explyt 5.0 на Joker: поддержка Rider и новый тестовый агент

Всем привет! Рады представить новую версию Explyt 5.0 с поддержкой Rider 🚀 новым тестовым агентом, Web search & Web fetch и другими приятными улучшениями.
Агентский режим генерации тестов

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

@a_cup_of_java | Другие наши каналы
О зависимостях в объектах и переходе к Kotlin

В парадигме ООП объекты взаимодействуют друг с другом. Первоначальная идея такого взаимодействия, впервые появившаяся в языке Smalltalk, заключалась в том, что объект A отправлял сообщение объекту B. В языках, разработанных позднее, используется вызов методов. В обоих случаях возникает один и тот же вопрос: как объект ссылается на другие объекты, чтобы достичь желаемых результатов?

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


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

@a_cup_of_java | Другие наши каналы
11 топовых библиотек и фреймворков для Java в 2025 году

Топ библиотек и фреймворков Java 2025: Spring Boot, Hibernate, JUnit, Micronaut, Quarkus. Практические советы от Senior и Lead разработчиков.

Читать: «11 топовых библиотек и фреймворков для Java в 2025 году»

@a_cup_of_java | Другие наши каналы
👍2
Хакатоны: не пора ли их переизобрести?

Дорогие читатели, сегодня - статья о хакатонах. Нет - не о том, что их нужно проводить в поездах. Хотя, полюбуйтесь: сотрудники Авито не смогли найти другого места для хакатона, чем поезд дальнего следования. И забронировали для этого целый вагон! Одно слово - хипстеры!

Но эта статья - о том, как хакатоны можно изменить и переосмыслить. Нужно, конечно, оставить всё веселье. Также, нужно добавить свободы участникам: когда хакатоны проводят компании, они обычно делают это со своими конкретными целями. И третье - нужно сделать их более длительными. Я предлагаю хакатон длительностью где-то в спринт (2 недели), но так, чтобы время активной работы было по-прежнему около нескольких суток. Другими словами, нужен хакатон, доступный работающему и, возможно, семейному человеку. Возможно ли это? Нужно Ваше мнение.


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

@a_cup_of_java | Другие наши каналы
1
VibeCode. Как не назови все равно полетит

Plain Text vs XML or Markdown: на чём писать промпты для ИИ‑кодера?

Структура — это новый язык общения с ИИ. Особенно когда дело касается кода.
Есть миф: чтобы попросить ИИ написать код, достаточно набросать запрос в чат «как есть». Plain text, без правил. Сработает? Иногда. Будет эффективно? Редко.
Почему ИИ «понимает» структурированный промпт (с тегами, отступами, чёткими блоками) лучше, чем простой текст?


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

@a_cup_of_java | Другие наши каналы
Числовой тип данных с плавающей точкой float IEEE 754

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


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

@a_cup_of_java | Другие наши каналы
Kafka для начинающих: откуда такой спрос и зачем нужна эта технология

Почему REST API не подходит для общения микросервисов?
Разбираем на примере интернет-магазина, как Kafka решает проблемы синхронной коммуникации, масштабирования и отказоустойчивости.

Простыми словами о топиках, партициях, consumer groups — для начинающих разработчиков.


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

@a_cup_of_java | Другие наши каналы
🔥2
@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 | Другие наши каналы
Как отключить кэш браузера в 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 | Другие наши каналы
Топ-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 | Другие наши каналы
Что такое 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 | Другие наши каналы
Java 25: упрощённые исходники

Язык Java развивается. Не так давно вышла очередная версия, в которой, помимо всего прочего, вышло любопытное обновление языка (JEP-512).

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

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


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

@a_cup_of_java | Другие наши каналы
Кейс из production: Deadlock в асинхронном коде на Java

Недавно наткнулся на коварную проблему, которая отлично демонстрирует важность правильной конфигурации пула потоков при работе с асинхронным программированием. Эта ситуация может возникнуть в любом проекте, где используются вложенные асинхронные операции, и её последствия могут быть катастрофическими для production-системы.


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

@a_cup_of_java | Другие наши каналы
Обзор 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 | Другие наши каналы
Что такое 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 | Другие наши каналы