Spring

@Transactional

  • AOP proxy mechanism
  • why same-class calls bypass the proxy
  • REQUIRES_NEW behavior

Hexagonal Architecture

  • ports and adapters
  • domain module isolation

ArchUnit

  • enforcing no Spring imports in domain layer