Skip to content
This repository was archived by the owner on Dec 13, 2020. It is now read-only.

Commit 3531f70

Browse files
committed
Feat: AOP Pointcut
- UserService - BoardService
1 parent 6e01178 commit 3531f70

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/main/java/com/springboot/aop/Performance.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import org.aspectj.lang.ProceedingJoinPoint;
55
import org.aspectj.lang.annotation.Around;
66
import org.aspectj.lang.annotation.Aspect;
7+
import org.aspectj.lang.annotation.Pointcut;
78

89
@Aspect
910
@Slf4j
@@ -67,7 +68,16 @@ public class Performance {
6768
* - ex) @annotation(org.springframework.transaction.annotation.Transactional): Transactional 어노테이션이 지정된 메소드 전부
6869
*/
6970

70-
@Around("execution(* com.springboot.aop.service.BoardService.getBoards(..))")
71+
/**
72+
* '@Pointcut' 어노테이션은 애스펙트에서 마치 변수와 같이 재사용 가능한 포인트컷을 정의할 수 있다.
73+
*/
74+
@Pointcut("execution(* com.springboot.aop.service.BoardService.getBoards(..))")
75+
public void getBoards() {}
76+
77+
@Pointcut("execution(* com.springboot.aop.service.UserService.getUsers(..))")
78+
public void getUsers() {}
79+
80+
@Around("getBoards() || getUsers()")
7181
public Object calculatePerformanceTime(ProceedingJoinPoint proceedingJoinPoint) {
7282
Object result = null;
7383

0 commit comments

Comments
 (0)