Чашечка Java
9.18K subscribers
3.72K photos
13 videos
55 files
5.88K links
Лучшие материалы по Java на русском и английском

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

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

Другие каналы: @tproger_channels
Download Telegram
Hibernate. Оптимизму здесь (не) место. Блокировки в БД

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

Сегодня мы рассмотрим работу блокировок в базах данных, уделив особое внимание оптимистичному подходу и его реализации во фреймворке Hibernate.

Сначала я решил сделать схему, которая покажет, как происходит блокировка в базе данных при запросе на обновление внутри какой-либо транзакции. Но в разных базах это происходит по-разному. И чем глубже изучаешь этот вопрос, тем больше находишь отличий. Поэтому я для начала просто приведу красивую картинку, как ИИ видит оптимистичные блокировки. А чтобы совсем не оторваться от реальности, расскажу, как это происходит на примере Postgres.


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

@a_cup_of_java | Другие наши каналы
Выбираем базу данных правильно! Чек-лист на все случаи жизни

Выбор базы данных — это как выбор инструмента: молотком не закручивают шурупы, а гаечным ключом не забивают гвозди. Чтобы не ошибиться, давайте разберёмся, какие бывают базы данных, чем они отличаются и когда их стоит использовать.


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

@a_cup_of_java | Другие наши каналы
Лучшие подарки для программистов в 2025 году
В статье собраны идеи ценных и практичных подарков для разработчиков — от подписок на онлайн-курсы до качественных гаджетов и техники, которые помогут сделать работу и отдых программиста комфортнее и интереснее. Лучший источник для изучения Java и подготовки к собеседованиям

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

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

Подробности: http://www.java67.com/2017/12/top-5-amazing-gifts-for-programmers-coders.html

#en

@a_cup_of_java | Другие наши каналы
Explyt Spring Plugin: поддержка Quarkus

Всем привет! На связи команда Explyt Spring. На этот раз как следует из названия будем говорить о поддержке Quarkus. На первый взгляд может показаться странным, причем тут Spring плагин и Quarkus. Но если разобраться более детально, то Spring также имеет поддержку Java EE аннотаций и к тому же поддержка Dependency Injection является одной из сильной сторон нашего плагина. Да и логика DI в Quarkus сильно проще чем в Spring, можно убедиться в этом прочитав официальную документацию, поэтому можно легко переиспользовать все наши текущие наработки и добавить поддержку Quarkus DI в наш плагин. И это также позволило переиспользовать для него многие другие наши “фичи”, о чем будет рассказано ниже.


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

@a_cup_of_java | Другие наши каналы
👍1
Что по экологии? Сколько углеродного следа оставляет ваш код

Узнайте, сколько CO₂ генерирует ваш код в 2025 году и как снизить углеродный след в IT. Практические советы по оптимизации архитектуры, выбору «зеленых» технологий и реальные кейсы компаний. Экологичное программирование — новый тренд для разработчиков и бизнеса.

Читать: «Что по экологии? Сколько углеродного следа оставляет ваш код»

@a_cup_of_java | Другие наши каналы
😁5👎1
Многомерный анализ данных временных рядов

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


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

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

Писать код, который достаточно бегло просмотреть — не менее важно, чем писать код, который в принципе можно прочитать. Давайте немного поговорим о «форме» кода — такой, чтобы по структуре кода можно было быстро понять, для чего он, и сократить время работы с кодовой базой.


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

@a_cup_of_java | Другие наши каналы
Шаг за шагом проектируем сокращатель ссылок

В этой статье я хочу показать, что из себя представляет System Design. На примере простого и очень популярного на собеседованиях сервиса "Сокращатель ссылок", мы рассмотрим стадии System Design и в конце у нас будет готова схема системы со всеми расчетами.
Вперед!

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

@a_cup_of_java | Другие наши каналы
Топ-5 продвинутых концепций функций в JavaScript

В статье рассматриваются ключевые продвинутые возможности JavaScript-функций: Rest и Spread параметры, функции как объекты, генераторы и синтаксис «new Function». Эти знания помогут углубить понимание и повысить мастерство в программировании. Лучшие ресурсы для подготовки к IT-интервью: собраны вопросы по Java, Spring, SQL, многопоточности и другим ключевым темам. Материалы помогут систематизировать знания и уверенно пройти собеседование в IT-сфере. Подробности в статье. Архив публикаций на сайте: обзор по годам

В статье представлен хронологический список публикаций с 2012 по 2020 годы, сгруппированных по месяцам. Это удобный навигатор для поиска материалов в архиве блога Soma Sharma.

Подробности: http://www.java67.com/2022/03/top-5-advanced-javascript-functio-concepts.html

#en

@a_cup_of_java | Другие наши каналы
Топ-10 инструментов для SQL-разработчиков и администраторов баз данных

На сайте Java67 опубликован обзор бесплатных и мощных инструментов, которые помогут управлять, анализировать и оптимизировать базы данных. В подборке — решения для работы с различными СУБД, поддержка SQL-запросов и удобный интерфейс. Топ вопросов и тем для интервью по SQL и программированию собраны в одном месте. В статье рассмотрены ключевые понятия и популярные вопросы, которые помогут подготовиться к собеседованию и углубить знания в базах данных и разработке. Что выбрать в Java: DOM или SAX парсер?

Пост: В мире Java-разработки выбор между DOM и SAX парсерами для работы с XML влияет на производительность и удобство. В статье разбираются ключевые отличия, плюсы и минусы каждого подхода, помогая определиться с оптимальным инструментом.

Подробности: http://www.java67.com/2022/09/top-10-tools-for-sql-developers-and.html

#en

@a_cup_of_java | Другие наши каналы
Где применяется Python в реальной жизни?

Python широко используется в AI, веб-разработке, автоматизации, анализе данных и даже разработке игр и мобильных приложений. Его простота и обширные библиотеки делают язык одним из самых востребованных в IT-сфере сегодня. Java: ключевые темы и подготовка к интервью
В статье собраны важные материалы по Java — от основ и коллекций до многопоточности и последних версий. Полезно для подготовки к собеседованиям и углубленного изучения языка. Архив блогов за последние годы

Текст: В статье представлен подробный архив публикаций с 2012 по 2021 год, включающий записи по месяцам и годам. Это позволяет легко найти интересующие материалы и проследить развитие тем блога с течением времени.

Подробности: http://www.java67.com/2022/08/where-is-python-used-in-real-world.html

#en

@a_cup_of_java | Другие наши каналы
Без(д)воз(д)мездно, то есть даром

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


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

@a_cup_of_java | Другие наши каналы
🤣2
Новые релизы в мире Java: вышли JobRunr 8 с оптимизацией энергозатрат, Gradle 9 RC с поддержкой Kotlin 2.1, обновления Grails 7, Micronaut и JHipster Lite. Обнаружена уязвимость CVE в Apache Tomcat, требующая внимания разработчиков.

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

#en

@a_cup_of_java | Другие наши каналы
Телеграфируем кодом Морзе через Java Stream API (часть 1 из 2)

Азбука Морзе — один из самых старых, но не уходящих на заслуженный отдых телекоммуникационных стандартов. Почему бы не объединить ее с Java? Это статья о технологиях, отстоящих друг от друга более чем на полтора столетия. Мы познакомимся с кодом Морзе, с подкапотной частью Java Stream API, и на живом примере соберем все это в одно кроссплатформенное приложение на Java.
Вперед, в прошлое!

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

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

Подробности: https://www.infoq.com/podcasts/java-ecosystem-continuously-adapting-developers/

#en

@a_cup_of_java | Другие наши каналы
Explyt 4.0: агентский режим и генерация тестов по исполнению

Всем привет! В Питер вместе с летней жарой пришел релиз Explyt 4.0 с уникальными фичами для написания кода, тестирования и дебаггинга:
Поддержка Testcontainers и не только

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

@a_cup_of_java | Другие наши каналы
Разница между Primary key и Unique key в SQL

Primary key однозначно идентифицирует строку и не может быть null, а Unique key допускает NULL и может быть несколько в таблице. Primary key автоматически создает кластерный индекс, Unique key — нет. Эти отличия важны для поддержания целостности данных. Топ IT-темы и вопросы для интервью. В статье собраны актуальные темы по программированию, разработке, базам данных и софт-скиллам, которые помогут подготовиться к собеседованиям и улучшить знания в IT-сфере. Полезно для новичков и опытных специалистов. Архив публикаций и политика конфиденциальности на блоге Soma Sharma

В блоге Soma Sharma представлена хронология публикаций с 2012 по 2018 годы, а также разделы с политикой конфиденциальности и условиями использования. Подписка на обновления позволит не пропускать новые материалы.

Подробности: http://www.java67.com/2012/10/difference-between-primary-vs-unique-key-table-sql.html

#en

@a_cup_of_java | Другие наши каналы
Разница между кластерным и некластерным индексом в SQL

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

В статье собраны разнообразные вопросы и темы по Java, Spring, SQL, JavaScript и другим технологиям, которые помогут успешно пройти собеседование и повысить уровень знаний в программировании и IT-сфере. Архив публикаций по годам и месяцам

В статье представлен подробный архив публикаций с 2012 по 2021 год, структурированный по месяцам. Такой формат помогает быстро найти нужные материалы и проследить динамику контента за несколько лет.

Подробности: http://www.java67.com/2012/10/difference-between-clustered-vs-nonclustered-index-sql-database.html

#en

@a_cup_of_java | Другие наши каналы
Разница между Primary key и Candidate key в SQL
Primary key — это выбранный уникальный ключ таблицы, а Candidate key — это потенциальные уникальные ключи. Среди нескольких Candidate ключей выбирают один основной — Primary key, который играет ключевую роль в дизайне базы данных и индексах. Полный гид по Java и IT-тематике

Статья охватывает широкий спектр тем — от Java-конкурентности, паттернов и модулей до интервью-вопросов, инструментов и фреймворков. Полезный источник для тех, кто хочет углубить знания в программировании и подготовиться к собеседованиям. Архив публикаций блога Soma Sharma

В представленном архиве собраны записи блога Soma Sharma с 2012 по 2020 год. Статьи охватывают разные темы и публиковались регулярно, что позволяет проследить динамику развития и интересов автора на протяжении нескольких лет.

Подробности: http://www.java67.com/2012/10/difference-between-primary-key-vs-candidate-keys-sql-database.html

#en

@a_cup_of_java | Другие наши каналы
Разница между include directive, include action и JSTL import в JSP

В JSP существуют три способа включения контента: include directive — статический, фиксирует изменения на этапе трансляции; include action — динамический, обновляется при каждом запросе; JSTL import похож на include action, но может подтягивать ресурсы извне. Обширный ресурс для разработчиков и тех, кто готовится к собеседованиям в IT. В блоге собраны вопросы по программированию, системному дизайну, популярным языкам и фреймворкам, а также материалы по управлению проектами и сертификациям. Полезно для подготовки и развития. Важность политики конфиденциальности в цифровую эпоху

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

Подробности: http://www.java67.com/2019/02/difference-between-include-directive.html

#en

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