9 Ekim 2019 Çarşamba

SpringAOP @AfterThrowing Anotasyonu

Giriş
Yakalanmamış exception'ları yakalar.

pointcut Alanı
Örnek
com.test.MainFrame paketleri altındaki sınıflardan fırlatılan tüm exception'ları yakalamak için şöyle yaparız.
@Aspect
public class AspectTest{

  @AfterThrowing(pointcut = "execution(* com.test.MainFrame.*(..))", throwing = "ex")
  public void logError(Exception ex) throws Throwable {
    // ex.printStackTrace();
  }

}
value Alanı
Örnek
com.example paketleri altındaki sınıflardan fırlatılan tüm exception'ları yakalamak için şöyle yaparız.
@Aspect
@Component
public class MailExceptionAspect {

    @AfterThrowing(value="execution(* com.example..*.*(..))", throwing="ex" )
    public void mailAfterThrowing(Throwable ex) {
        // do something to send an email
    }
}

Hiç yorum yok:

Yorum Gönder