Q3Why are external side effects inside a transaction dangerous?
@Transactional rolls back database changes but cannot roll back emails, SMS messages, HTTP calls, or any external side effect -- fire side effects only after a confirmed commit using @TransactionalEventListener(AFTER_COMMIT).