Episode 8. What’s your Aspect?

In this episode we go over Aspects (and AspectJ), what really is, and when to use them. It turns out, that there is nothing misterious about them! We also cover how to set-up Aspects for J2SE so you can start using them immediately!

Questions, feedback or comments!comments@javapubhouse.com

VM Parameter
-javaagent:dep/aspectjweaver.jar

Example Aspect

@Aspect

public class OrderAspect {

    @Before("execution(* *.*(Order))") // must qualify
    public void anyCall() {
        System.out.println("Was called from anywhere");
    }
  }

Example aop.xml file

          <aspectj>
            <aspects>
              <aspect name="OrderAspect"/>
            </aspects>
            <weaver options="-verbose -showWeaveInfo">
            </weaver>
          </aspectj>

Example Folder Structure

src
 |
 |-META-INF
    |
    |-aop.xml

References:

http://www.eclipse.org/aspectj/doc/released/adk15notebook/ataspectj-pcadvice.html

http://blog.espenberntsen.net/2010/03/20/aspectj-cheat-sheet/

http://www.eclipse.org/aspectj/doc/next/quick5.pdf

(Using aspects with annotations)
http://stackoverflow.com/questions/2011089/aspectj-pointcut-for-all-methods-of-a-class-with-specific-annotation

Leave a Reply

Your email address will not be published. Required fields are marked *