Документация Spring рекомендует запретить аннотации @Transactional методов интерфейса, поскольку аннотации интерфейсов не наследуются классами. Однако с помощью Java 8 мы можем обеспечить конкретную реализацию по умолчанию в интерфейсе. Если такой метод интерфейса по умолчанию должен быть границей транзакций, у нас нет другого выбора: мы должны поместить аннотацию @Transactional в метод интерфейса.
Будет ли эта работа (т.е. будет Spring соблюдать границу транзакции в этом случае)? Если да, есть ли скрытые подводные камни для этого подхода?