public class TraceAdvice implements MethodInterceptor { private static final Log log = LogFactory.getLog(TraceAdvice.class); public Object invoke(MethodInvocation invocation) throws Throwable { String methodName = invocation.getMethod().getName(); String className = invocation.getThis().getClass().getName(); log.trace("*** Start : " + methodName + "' of class [" + className + "]"); Object ret = invocation.proceed(); log.trace("*** End : " + methodName + "' of class [" + className + "]"); return ret; } }