Функция случайных вопросов поможет вам подумать и проверить свои знания.
Попробуйте ответить на вопросы устно или в уме, а затем нажмите на сам вопрос, чтобы сравнить свой ответ и проанализировать его.
Что вы упустили? А может быть, вы знаете гораздо больше? Так или иначе, это хорошая практика. :)
В базе данных хранится около 500 вопросов, охватывающих различные темы из категорий таких как Core-1, Core-2, Многопоточность, SQL, Hibernate, Spring, Паттерны, Алгоритмы.
В категории M-BOSS находятся вопросы, которые могут встречаться на технических собеседованиях Java - разработчиков. (взято из открытых источников)
Приглашаю вас присоединиться к телеграм-группе для обратной связи и получения информации о будущих обновлениях! Хочу вас также пригласить в дискорд, для общения на различные темы о Java и не только в ламповой атмосфере.
Дискорд будет пополняться не сложными практическими задачами, которые будут помогать прокачивать навыки технического мышления!
Заходите на канал "задачи-по-java" и оттачивайте свои навыки!
Помните: Именно кропотливый труд над собой, делает из вас профессионала высокого уровня!
Приятного обучения!

Что произойдет, если один метод с @Transactional вызовет другой метод с @Transactional?

Spring

Если один метод, помеченный аннотацией @Transactional, вызывает другой метод, также помеченный аннотацией @Transactional, то внутренний метод будет выполняться в рамках той же транзакции, что и внешний метод. При вызове внутреннего метода, Spring будет проверять наличие активной транзакции. Если активная транзакция уже существует, то внутренний метод будет выполняться в рамках этой транзакции. Если же активной транзакции нет, то Spring создаст новую транзакцию для внутреннего метода. Пример: @Service @Transactional public class MyService { @Autowired private MyRepository myRepository; public void outerMethod() { // Логика внешнего метода innerMethod(); } @Transactional public void innerMethod() { // Логика внутреннего метода myRepository.save(entity); } } В этом примере оба метода, outerMethod() и innerMethod(), помечены аннотацией @Transactional. При вызове outerMethod() будет создана транзакция, и когда происходит вызов innerMethod(), он будет выполняться в рамках этой же транзакции. Если внешний метод завершается успешно, транзакция будет закоммичена, включая все изменения, внесенные внутренним методом. Если возникает исключение, транзакция будет откачена, и все изменения будут отменены. Важно учитывать, что при вызове внутреннего метода с аннотацией @Transactional внутри внешнего метода с аннотацией @Transactional, уровень изоляции и другие атрибуты транзакции будут унаследованы от внешнего метода. Использование аннотации @Transactional в методах позволяет управлять транзакциями внутри сервисного слоя приложения с помощью простой и декларативной конфигурации.

Открыть

Копировать ссылку

ДРУГОЙ ВОПРОС