Чашечка 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
MultiDirectory: российская альтернатива Active Directory с 2FA, SSO и совместимостью с AD

MultiDirectory от компании МУЛЬТИФАКТОР — современная служба каталогов для централизованного хранения данных и управления информацией о пользователях, группах и сетевых ресурсах. Она помогает российским компаниям администрировать инфраструктуру с помощью удобных инструментов и гибких механизмов для поиска и фильтрации данных. Рассказываем об особенностях и функционале MultiDirectory.

Читать: «MultiDirectory: российская альтернатива Active Directory с 2FA, SSO и совместимостью с AD»

@a_cup_of_java | Другие наши каналы
3
Архитектурные принципы Spring Security. Часть третья

Команда Spring АйО перевела и адаптировала доклад Даниэля Гарнье-Муару “Spring Security Architecture Principles”, в котором на наглядных примерах рассказывается, как пользоваться возможностями Spring Security, не запутываясь на каждом шагу и не зарабатывая себе головную боль.

Доклад публикуется тремя частями. В первой части было рассказано об основных подходах к созданию цепочек фильтров, а также разработан простейший фильтр. Во второй части мы рассказали об Authentication объектах и продемонстрировали, как разработать специализированный фильтр для обеспечения доступа программы-робота к основному приложению. В третьей части мы поговорим об абстракции AuthenticationProvider и приведем пример ее использования.


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

@a_cup_of_java | Другие наши каналы
3
Семантический поиск по статьям Хабра в PostgreSQL + индексация текстов LLM в Ollama

Покажу вам практическую реализацию семантического поиска на основе векторных представлений - эмбеддингов из текста. Здесь я создам систему, которая анализирует статьи с Хабра, извлекает из них темы и ключевые слова с помощью локально работающих больших языковых моделей LLM, и на основе этих данных создает векторные представления для эффективного поиска по смыслу, а не по запросу на вхождение определенного текста.


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

@a_cup_of_java | Другие наши каналы
2👍1😁1
Эволюция Java в 2025 году: ключевые тренды и успешные кейсы

В 2025 году Java продолжает развиваться благодаря таким технологиям, как GraalVM и Project Loom. Язык становится более быстрым и эффективным инструментом для создания решений в сфере искусственного интеллекта, облачных нативных приложений, систем Интернета вещей и масштабируемых микросервисов. В этой статье рассмотрим ключевые тренды, поддерживающие актуальность Java в современной разработке программного обеспечения.


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

@a_cup_of_java | Другие наши каналы
3👍1
AI-ассистенты для кодинга в 2025: сравниваем GigaChat, Claude, GPT-4o и DeepSeek на реальных задачах

В наши дни, кажется, каждый второй пишет AI-ассистента для разработчиков. Но работает ли это в реальности? Мы решили проверить на себе и сравнить самых популярных помощников.

Внутри команды у нас 14 Java-разработчиков — от мидлов до уверенных сеньоров. Все мы работаем в боевом проекте, и стало интересно: может ли AI реально помочь в повседневной разработке, или это всё больше про хайп?


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

@a_cup_of_java | Другие наши каналы
Как я учил жёлтый ИИ торговать и обманывать друг друга

В предыдущей статье я учил существ рисовать узоры и привлекать внимание человека. Теперь я пошёл дальше — дал им возможность «торговать» друг с другом. Простая экономика и координация действий через обмен. В этой статье — как это устроено, какие алгоритмы я использовал и почему торговля среди глупых жёлтых существ оказалась совсем не глупой.
Читать

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

@a_cup_of_java | Другие наши каналы
Как NASA ошиблись в исходном коде планеты

Баги в коде — явление нередкое, но сегодня мы исследуем не просто ошибки, а настоящие космические баги! Что скрывает проект, созданный в недрах NASA? Готовьте свои шапочки из фольги!
Поехали!

Читать: https://habr.com/ru/companies/pvs-studio/articles/915850/?utm_campaign=915850

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

Разберемся откуда берутся циклические зависимости и что с этим делать на примере эволюции простенького сервиса.


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

@a_cup_of_java | Другие наши каналы
Покерная лаборатория закрывается, ловите исходники

Я делал этот проект более полутора лет, сейчас отказываюсь от него. И, чтобы эти полтора года не были прожиты зря) открываю исходники. Java+Spring.

Принимайте проект «как есть», со всеми ad-hoc костылями, незаконченными исследованиями, TODOs, а также всевозможными KISS, DRY, и, как их… SOLID с GoF.

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


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

@a_cup_of_java | Другие наши каналы
Как ускорить Java-приложения с помощью GPU и CUDA

Пост: Статья рассказывает, как интеграция CUDA с Java позволяет повысить производительность задач в 10–100 раз. Использование JNI открывает возможности GPU-ускорения для шифрования, аналитики и других вычислительно сложных процессов в корпоративной среде. Ускорение Java-приложений с помощью CUDA: интеграция через JNI позволяет поднять производительность шифрования и хэширования данных до миллионов операций в секунду. В статье разбирают реализацию, советы по памяти, безопасности и развёртыванию GPU-ускоренного кода.

Подробности: https://www.infoq.com/articles/cuda-integration-for-java/

#en

@a_cup_of_java | Другие наши каналы
👾1
Новый уровень разработки AI в Java: Embabel — фреймворк от создателя Spring Роджера Джонсона. Он позволяет создавать интеллектуальные агенты с надежным планированием действий и полной типизацией, упрощая интеграцию ИИ в корпоративные приложения на JVM.

Подробности: https://www.infoq.com/news/2025/06/introducing-embabel-ai-agent/

#en

@a_cup_of_java | Другие наши каналы
Как отправлять email из кода: nodemailer, SMTP и HTML-письма

Как отправлять email из кода. Показываем, как отправлять письма через Nodemailer, SMTP и HTML. Рассматриваем пошаговую инструкцию и основные нюансы Tproger

Читать: «Как отправлять email из кода: nodemailer, SMTP и HTML-письма»

@a_cup_of_java | Другие наши каналы
Meta* и Яндекс годами собирали данные о вас через локальные порты Android. Даже в режиме инкогнито

Meta* и Яндекс отслеживали действия пользователей Android даже в режиме инкогнито через соединение с localhost. Использовались скрипты Pixel и Метрики, встроенные на миллионы сайтов. Теперь механизм отключён, но работал с 2017 года.

Читать: «Meta* и Яндекс годами собирали данные о вас через локальные порты Android. Даже в режиме инкогнито»

@a_cup_of_java | Другие наши каналы
🆒4
Нашел, проверил, убедил: как мы организовали генерацию SQL-запросов, проверку сложных данных и при чем здесь Allure

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

Я, Михаил Герасимов, инженер РСХБ-Интех. Уже два года занимаюсь автоматизацией тестирования, и за это время успел написать (и переписать) немало SQL-запросов. Вместе с моим коллегой Михаилом Палыгой мы развиваем инструменты для автоматизированного тестирования, и сегодня расскажем вам о том как мы справляемся с построением сложных SQL-запросов и проверкой объектов в базе данных, на примере нашей библиотеки CheckMateDB для автоматизации тестирования банковской системы ЦФТ-Банк.

В статье опишем проблемы, с которыми сталкивались при ручном написании SQL-запросов и проверке данных: дублирование кода, сложность поддержки, отсутствие единого стиля и низкая информативность тестов. Для решения этих проблем мы разработали инструмент QueryBuilder, который позволяет динамически генерировать SQL-запросы с помощью Java-кода.

Мы создали иерархию классов CriteriaBasic и Table для удобного описания критериев поиска данных в базе, используя паттерн fluent interface. Также мы разработали кастомные классы проверок на базе AssertJ с поддержкой Allure-шагов, которые позволяют проверять сложные многоуровневые объекты с возможностью погружения во вложенные структуры. Для облегчения рутинной работы создали плагин, автоматически генерирующий классы DTO и Table на основе структуры базы данных. Библиотека интегрирована с Hibernate через DaoCommon, что обеспечивает удобное выполнение SQL-запросов и управление сессиями. Результатом стало существенное улучшение читаемости тестов, повышение переиспользуемости кода, стандартизация подхода к тестированию и создание информативных Allure-отчетов.


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

@a_cup_of_java | Другие наши каналы
1
Java Digest #25

Всем привет! 👋👋👋👋👋

Мы Java-разработчики Т-Банка: Андрей, Арсений, Роман, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.
Читать свежий выпуск

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

@a_cup_of_java | Другие наши каналы
4
От конфигурации к динамике. Новый API по созданию бинов в Spring

В Spring Framework 7 появился новый API — BeanRegistry, который упрощает и расширяет возможности по динамической регистрации бинов. Это особенно актуально, когда невозможно заранее предсказать, сколько компонентов потребуется, как в случае со Spring Data. В новой статье от эксперта сообщества Spring АйО, Михаила Поливахи, вы узнаете:

– Как Spring Data справлялась с динамической регистрацией раньше;

– Почему SingletonBeanRegistry и BeanDefinitionRegistry недостаточны;

– Чем хорош новый BeanRegistry, и как он решает старые проблемы;

– Какие нюансы возникают при попытке работать с Environment в ранних фазах жизненного цикла контекста.


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

@a_cup_of_java | Другие наши каналы
2
Одноклассовый энтерпрайз

В пригороде далекого города Нью-Дели жил простой индийский паренек со сложным именем Чандракант. Любил он маму, Кришну и общаться с волшебными говорящими грибами.


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

@a_cup_of_java | Другие наши каналы
😱3👍1
Интеграция API-тестов с Jenkins Pipeline: с чего начать?

Вы написали серию интеграционных API-тестов на Java (с использованием TestNG и RestAssured) и хотите, чтобы они сами запускались при каждом изменении кода? Отличная идея! Настроив Continuous Integration/Continuous Delivery (CI/CD), вы избавитесь от рутины ручного прогона тестов и получите быстрый фидбэк о качестве системы. В этой статье я в живой манере расскажу, как шаг за шагом встроить ваши API-тесты в Jenkins Pipeline на локальном сервере. Вас ждёт установка Jenkins, подключение Maven-проекта, написание Jenkinsfile (Groovy Pipeline скрипта), настройка красивых Allure-отчётов, интеграция с GitHub и даже автоматический деплой при успешном прохождении тестов. Поехали!


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

@a_cup_of_java | Другие наши каналы
Топ-20 вопросов по Ansible для интервью в DevOps и разработке

В статье собраны ключевые вопросы и ответы по Ansible, которые помогут подготовиться к собеседованиям. Рассматриваются основы автоматизации, принципы работы с плейбуками и отличия Ansible от других инструментов. Лучшие вопросы для подготовки к интервью по Java и IT В статье собраны сложные и популярные вопросы по Java, SQL, Linux, Spring, Hibernate и другим темам, которые помогут эффективно подготовиться к собеседованию и повысить шансы на успех. Топ курсов и ресурсов для изучения IT в 2025 году

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

Подробности: http://www.java67.com/2022/09/top-20-ansible-interview-questions.html

#en

@a_cup_of_java | Другие наши каналы
Топ 24 вопроса по работе с датой и временем в Java для успешного интервью

Статья разбирает ключевые особенности Date Time API, проблемы SimpleDateFormat и практические задачи для подготовки к собеседованиям Java-разработчиков. Полезно для углубления знаний и отработки навыков.

Подробности: http://www.java67.com/2017/08/top-10-date-time-and-calendar-Java-Interview-Questions.html

#en

@a_cup_of_java | Другие наши каналы
2f7083a3-065d-4fb9-a7d9-19757692529e.gif
25.3 KB
Топ-43 вопроса по Java IO и работе с файловой системой для разработчиков с опытом 1-3 года. В статье собраны часто задаваемые вопросы с ответами, которые помогут лучше понять работу с файлами и подготовиться к собеседованию в Java. Полезно для практики и быстрого решения задач. Лучшие вопросы для собеседований по Java и не только

В подборке собраны разнообразные вопросы для подготовки к интервью: от базовых и продвинутых тем Java до потоков, SQL, Linux и дизайна ПО. Полезный ресурс для эффективной подготовки и повышения шансов на успех. Топ курсов для изучения IT в 2025 году

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

Подробности: http://www.java67.com/2020/02/40-java-io-and-files-interview-questions-answers.html

#en

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