@Transactional ਇੱਕ method ਨੂੰ ਇੱਕ database transaction ਵਿੱਚ ਲਪੇਟਦਾ ਹੈ: Spring method ਚੱਲਣ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਖੋਲ੍ਹਦਾ ਹੈ ਅਤੇ ਜਦੋਂ ਇਹ ਆਮ ਤੌਰ 'ਤੇ return ਕਰਦੀ ਹੈ ਤਾਂ commit ਕਰਦਾ ਹੈ — ਜਾਂ ਜੇ ਇਹ throw ਕਰਦੀ ਹੈ ਤਾਂ rolls back ਕਰਦਾ ਹੈ। ਅੰਦਰੂਨੀ ਤੌਰ 'ਤੇ ਇਹ ਇੱਕ AOP proxy ਹੈ, ਜੋ ਜ਼ਿਆਦਾਤਰ gotchas ਦਾ ਸਰੋਤ ਹੈ।
ਬੁਨਿਆਦੀ ਵਰਤੋਂ
{
{
accounts.debit(from, amount);
accounts.credit(to, amount);
}
}
