Пример простого аспекта логирования

Пример простого аспекта логирования:

@Aspect
@Component
public class LoggingAspect {

    @Before("execution(* com.example.service.*.*(..))")
    public void logBeforeMethod() {
        System.out.println("Метод сервиса вызывается...");
    }

    @AfterReturning("execution(* com.example.service.*.*(..))")
    public void logAfterMethod() {
        System.out.println("Метод сервиса успешно завершен!");
    }
}

Как это работает:

    @Aspect говорит Spring, что это класс-аспект.

    Аннотация @Before указывает, что метод logBeforeMethod() должен вызываться до выполнения каждого метода, подходящего под шаблон (* — любое имя, .. — любые параметры).

    @AfterReturning — после успешного завершения метода.

    Spring при запуске создает «прокси» вокруг всех подходящих бинов (@Service и др.), и при каждом вызове метода выполняет «вплетенный» код из аспектов.
Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)   Короткая ссылка:
Пример простого аспекта логирования:

@Aspect
@Component
public class LoggingAspect {

    @Before("execution(* com.example.service.*.*(..))")
    public void logBeforeMethod() {
        System.out.println("Метод сервиса вызывается...");
    }

    @AfterReturning("execution(* com.example.service.*.*(..))")
    public void logAfterMethod() {
        System.out.println("Метод сервиса успешно завершен!");
    }
}

Как это работает:

    @Aspect говорит Spring, что это класс-аспект.

    Аннотация @Before указывает, что метод logBeforeMethod() должен вызываться до выполнения каждого метода, подходящего под шаблон (* — любое имя, .. — любые параметры).

    @AfterReturning — после успешного завершения метода.

    Spring при запуске создает «прокси» вокруг всех подходящих бинов (@Service и др.), и при каждом вызове метода выполняет «вплетенный» код из аспектов.
https://webprogr.ru/~ioXxO
Короткая ссылка на новость:https://webprogr.ru/~ioXxO


Последние новости

Пример простого аспекта логирования

Пример простого аспекта логирования:

@Aspect
@Component
public class LoggingAspect {

    @Before("execution(* com.example.service.*.*(..))")
    public void logBeforeMethod() {
        System.out.println("Метод сервиса вызывается...");
    }

    @AfterReturning("execution(* com.example.service.*.*(..))")
    public void logAfterMethod() {
        System.out.println("Метод сервиса успешно завершен!");
    }
}

Как это работает:

    @Aspect говорит Spring, что это класс-аспект.

    Аннотация @Before указывает, что метод logBeforeMethod() должен вызываться до выполнения каждого метода, подходящего под шаблон (* — любое имя, .. — любые параметры).

    @AfterReturning — после успешного завершения метода.

    Spring при запуске создает «прокси» вокруг всех подходящих бинов (@Service и др.), и при каждом вызове метода выполняет «вплетенный» код из аспектов.
Рейтинг@Mail.ru