первое уточнение: аннотация @Transactional не означает, что в конце метода есть коммит. Это означает, что метод присоединяет транзакцию (или запускает новую - это зависит от точных атрибутов распространения), поэтому фиксация (или откат) будет выполняться в конце транзакции, что может (и часто делает) несколько методов с различным доступом к БД.
Обычно Spring (или другой менеджер транзакций) позаботится об этом (ie отключение автоматической фиксации).
@ Транзакционная пропущена
Транзакционный контекст отсутствует, поэтому фиксация выполняется немедленно, так как база данных изменена. Опция отката отсутствует, и в случае ошибки целостность данных может быть нарушена,
@ Определено транзакцией
Во время транзакций объекты JPA находятся в управляемом состоянии, в конце транзакции состояние автоматически сбрасывается в БД (не нужно вызывать someRepository.save (entity)