지금까지는 @Controller에서 각 메서드에 log를 남겼었다.
어느 순간 살펴보니 @Controller의 코드가 너무 지저분해서 AOP를 사용해서 Log를 남겨주려고 한다.
AOP가 사실 어려운 건 아닌 것 같은데 잘 배우지 못해서 설정에 어려움이 있는 것 같다.
가장 먼저 마주친 문제는 Pointcut is malformed Error.
malformed라는 단어도 고등학교 이후로 처음 본 것 같다.
@Aspect
@Component
@Slf4j
public class LogAdvice {
@Before("execution(* com.cafe24.healthshare.service.UserService*.*(..))")
public void test1(HttpRequest request) {
log.info(request.getURI().getClass().getSimpleName());
}
}
한참을 구글링하고 고민하다가 기존에 사용하던 것과 달라진 것을 생각해보니,
HttpRequest 를 AOP에 뜬금 없이 넣은 게 아닌가 싶어 일단 제거했다.
그러니 잘 생성이 된다.
다음은 어떻게 URI를 가져올 것인가에 대해서 생각해봐야겠다.
'Back-End > Spring' 카테고리의 다른 글
JpaRepository (0) | 2021.05.12 |
---|---|
엔티티 클래스 (0) | 2021.05.12 |
Spring Context Root 경로 (Resources 경로) (0) | 2021.03.21 |
Spring AOP 용어 정리 (0) | 2021.03.21 |
Spring AOP : @Before와 Request로 ServletPath Logging (0) | 2021.03.21 |
댓글