본문 바로가기

around advice

개발 프레임워크 만들기 대장정 27 - Spring.NET의 advice 종류와 적용 ■ advice 종류 ▶ around advice 앞에서 알아본 CommonLoggingAroundAdvice 타입은 around advce중의 하나였다. 즉 인터페이스 IMethodInterceptor를 상속해서 Invoke() 메소드를 구현하고 있다. 아래는 IMethodInterceptor의 정의이다. namespace AopAlliance.Intercept { public interface IMethodInterceptor : ... { object Invoke(IMethodInvocation invocation); } } 이 메소드의 인자로 넘어오는 invocation은 인터셉트된 타겟 객체에 대한 호출을 나타낸다. 이 인자의 Proceed() 메소드를 호출하면 인터셉트되어서 중단된 타겟 메소드.. 더보기
개발 프레임워크 만들기 대장정 25 - AOP 적용 예제 I ■ 예제 설명 앞에서 본 샘플 프로젝트 솔루션의 구조이다. Spring.Calculator.Web 프로젝트를 실행시켜보면 다음과 같은 결과 페이지가 보인다. 첫번째 링크는 단순한 웹 서비스 메소드를 호출하고 있다. AOP가 적용된 메소드를 호출하기 위해서는 두번째 링크를 클릭해야 한다. 이번 포스트에서는 두번째 링크에 대한 웹 서비스를 AOP 예제로 삼겠다. 두번째 링크를 클릭하면 다음과 같은 웹 서비스 테스트 화면이 나온다. 노출된 메소드중에서 Add 메소드를 클릭해서 적절히 값을 넣고 호출한다. 이 메소드를 호출하고 나서 남는 로그는 다음과 같다. 2008-08-18 23:09:34,406 [DEBUG] Spring.Aspects.Logging.CommonLoggingAroundAdvice - Int.. 더보기