Această regulă semnalează codul Java care utilizează excepțiile depreciate ale Spring legate de blocare CannotSerializeTransactionException și DeadlockLoserDataAccessException.
Începând cu Spring Cadrul 6.0.3, aceste excepții au fost depreciate din cauza unei semantici inconsecvente între driverele JDBC. Dezvoltatorii sunt sfătuiți să utilizeze CannotAcquireLockException în schimb, care oferă o modalitate unificată, consecventă cadrului, de a gestiona blocajele pesimiste și eșecurile izolării tranzacțiilor.
Următorul exemplu arată utilizarea invalidă care va fi marcată:
import org.springframework.dao.CannotSerializeTransactionException;
import org.springframework.dao.DeadlockLoserDataAccessException;
public class InvalidLockingUsage {
public void simulateCannotSerialize() {
throw new CannotSerializeTransactionException("Simulated serialization failure");
}
public void simulateDeadlock() {
throw new DeadlockLoserDataAccessException("Simulated deadlock");
}
}
Următorul exemplu arată utilizarea migrată validă:
import org.springframework.dao.CannotAcquireLockException;
public class ValidLockingUsage {
public void method() {
throw new CannotAcquireLockException("Simulated issue");
}
}
Pentru informaţii suplimentare, vedeţi resursele următoare: