aop

    Sentry.io를 이용하여 Log를 한눈에 보기

    1. POM 의존성설정 io.sentry sentry-spring-boot-starter 6.14.0 2. YML파일 설정 sentry: dsn: Sentry.io에서 발급받은 DSN키값 일단은 전처리 과정에서 받은 오류를 받아서 Type 값과 method를 입력시켜주었습니다. package com.cos.photogramstart.handler.aop; import com.cos.photogramstart.handler.ex.CustomVaildationApiException; import com.cos.photogramstart.handler.ex.CustomVaildationException; import io.sentry.Sentry; import org.aspectj.lang.Proceeding..

    Spring Filter,Interceptor,AOP 차이

    1. Filter, Interceptor, AOP의 흐름 Filter와 Interceptor는 Servelet단위에서 실행되는 반면 AOP는 메서드 앞에서 Proxy 패턴으로 실행된다. 필터는 웹 컨테이너 내에 생성한 후 초기화 시 init()함수를 호출한다. 그리고 doFilter가 호출된다. 컨트롤러에 들어가기전에 PreHandler()가 실행된다. 컨트롤러에서 나와 postHandlera(),afterCompletion(),doFilter() 순으로 실행된다. 컨트롤러의 메소드 처리가 끝나 return 되고 화면에 띄워즌 처리가 되기 직전에 preHandler가 호출된다. 실행순서: Filter → Interceptor → AOP → Interceptor → Filter 1) Filter Filte..

    AOP 전처리와 후처리 공통로직,핵심로직을 분리.

    AOP 용어 Aspect 여러 객체에 공통으로 적용되는 공통 관심 사항을 Aspect라고 한다. Target 우리가 위빙할 대상을 Target이라고 한다. Pointcut JoinPoint를 적용할 영역을 지정한다. JoinPoint 클래스의 인스턴스 생성 시점', '메소드 호출 시점(앞, 뒤 등)', '예외 발생 시점'과 같이 특정 시점을 조인포인트라고 한다. 1) @Around 2) @Before 3) @After 4) @AfterThrowing 5) @AfterReturning Advice 조인 포인트에 삽입되어져 실질적으로 동작하는 코드를 Advice라고 한다. /@Configuration Controller전에 쓰고 @Component Controller 가 뜨고난 후 @Component @As..

    AOP란 무엇인가

    AOP는 공통관심사항과 핵심관심사항을 분리시켜논다. 모든회원의 로그인하는 시간 또는 내가 실행하는 모든 패키지에 대해 시간을 측정해줄수있다. 다음소스는 Mapper,Service,Controller에서 실행되는 메서드들의 실행시간을 측정하는 소스이다. package com.example._0816test2.AOP; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint; import org.spr..