Techniques for dealing with complex and unfamiliar Java code
If you've ever inherited and then had to maintain a Java-based legacy application, then this article is for you. The author shows you how to use aspect-oriented programming (AOP) to gain an unprecedented view into the inner workings of even the most opaque of legacy applications.