Simple After Returning Advice
/* Pro Spring By Rob Harrop Jan Machacek ISBN: 1-59059-461-4 Publisher: Apress */ /////////////////////////////////////////////////////////////////////////////////////// public interface IMessageWriter { public void writeMessage(); } /////////////////////////////////////////////////////////////////////////////////////// public class MessageWriter implements IMessageWriter{ public void writeMessage() { System.out.print("World"); } } /////////////////////////////////////////////////////////////////////////////////////// import java.lang.reflect.Method; import org.springframework.aop.AfterReturningAdvice; import org.springframework.aop.framework.ProxyFactory; public class SimpleAfterReturningAdvice implements AfterReturningAdvice { public static void main(String[] args) { MessageWriter target = new MessageWriter(); // create the proxy ProxyFactory pf = new ProxyFactory(); pf.addAdvice(new SimpleAfterReturningAdvice()); pf.setTarget(target); MessageWriter proxy = (MessageWriter) pf.getProxy(); // write the messages proxy.writeMessage(); } public void afterReturning(Object returnValue, Method method, Object[] args, Object target) throws Throwable { System.out.println(""); System.out.println("After method: " + method.getName()); } }