From 4d46f058c314a3c67d1db584dd0a3755b5e0c101 Mon Sep 17 00:00:00 2001 From: 0samsung0 <78357262+0samsung0@users.noreply.github.com> Date: Mon, 19 May 2025 17:35:02 +0300 Subject: [PATCH] add LoggingAspect --- pom.xml | 6 ++++- .../samples/petclinic/LoggingAspect.java | 27 +++++++++++++++++++ .../samples/petclinic/owner/Visit.java | 9 +++---- 3 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 src/main/java/org/springframework/samples/petclinic/LoggingAspect.java diff --git a/pom.xml b/pom.xml index 27fb9a6bd..b9c62ccf7 100644 --- a/pom.xml +++ b/pom.xml @@ -18,7 +18,7 @@ - 17 + 21 UTF-8 UTF-8 io.projectreactor diff --git a/src/main/java/org/springframework/samples/petclinic/LoggingAspect.java b/src/main/java/org/springframework/samples/petclinic/LoggingAspect.java new file mode 100644 index 000000000..651a5421d --- /dev/null +++ b/src/main/java/org/springframework/samples/petclinic/LoggingAspect.java @@ -0,0 +1,27 @@ +package org.springframework.samples.petclinic; + + +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.springframework.stereotype.Component; + +@Aspect +@Component +public class LoggingAspect { + + //Pointcut: all methods in package "model" + @Before("execution(* model.BaseEntity.getId())") + public void logBeforeMethod(){ + System.out.println("model.BaseEntity.getId..."); + } + + @Before("execution(* model.NamedEntity.getName())") + public void logBeforeMethod2(){ + System.out.println("model.NamedEntity.getName..."); + } + + @Before("execution(* model.Person.*())") + public void logBeforeMethod3(){ + System.out.println("model.Person"); + } +} diff --git a/src/main/java/org/springframework/samples/petclinic/owner/Visit.java b/src/main/java/org/springframework/samples/petclinic/owner/Visit.java index 35569bdaa..3e0873748 100644 --- a/src/main/java/org/springframework/samples/petclinic/owner/Visit.java +++ b/src/main/java/org/springframework/samples/petclinic/owner/Visit.java @@ -15,15 +15,14 @@ */ package org.springframework.samples.petclinic.owner; -import java.time.LocalDate; - -import org.springframework.format.annotation.DateTimeFormat; -import org.springframework.samples.petclinic.model.BaseEntity; - import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Table; import jakarta.validation.constraints.NotBlank; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.samples.petclinic.model.BaseEntity; + +import java.time.LocalDate; /** * Simple JavaBean domain object representing a visit.