@Transactional envuelve un método en una transacción de base de datos: Spring abre una antes de que el método se ejecute y hace commit cuando retorna con normalidad, o hace rollback si lanza una excepción. Por debajo es un proxy AOP, que es la fuente de la mayoría de los sustos.
Uso básico
{
{
accounts.debit(from, amount);
accounts.credit(to, amount);
}
}
