Q5:特定のメソッド呼び出しをログに記録するには?

特定のメソッドを指すよう、pointcut を記述します。以下は"test1"という名前のメソッドのみ対象にする例です。パッケージで対象を絞る場合も同様に行います。

package logtest.aop.aspect;

import org.apache.log4j.*;

aspect MethodTraceForTest1 {
        
        private static final Logger logger = 
        Logger.getLogger("logtest.aop.aspect.MethodTraceForTest1");
        pointcut methodTrace(): execution(public * *.test1(..));

        before(): methodTrace() {
                logger.debug("entering:" + thisJoinPoint);
        }
        after() returning: methodTrace() {
                logger.debug("exiting:" + thisJoinPoint);
        }
}

トップページへ戻る