Joinpoint VS ProceedingJoinPoint en AOP à l'aide de aspectJ?

Quelqu'un peut-il me dire quelle est la différence entre Joinpoint et Proceedingjoinpoint ?

Quand utiliser Joinpoint et Proceedingjoinpoint dans la méthode de l'aspect de la classe ?

J'ai utilisé le JoinPoint dans mon AspectJ class comme ,

@Pointcut("execution(* com.pointel.aop.test1.AopTest.beforeAspect(..))")  
public void adviceChild(){}  

@Before("adviceChild()")  
public void beforeAdvicing(JoinPoint joinPoint /*,ProceedingJoinPoint pjp - used refer book marks of AOP*/){ 

    //Used to get the parameters of the method !
    Object[] arguments = joinPoint.getArgs();
    for (Object object : arguments) {
        System.out.println("List of parameters : " + object);
    }

    System.out.println("Method name : " + joinPoint.getSignature().getName());
    log.info("beforeAdvicing...........****************...........");
    log.info("Method name : " + joinPoint.getSignature().getName());
    System.out.println("************************"); 
}

Mais certains de ce que je vois dans d'autres ressources ,

@Around("execution(* com.mumz.test.spring.aop.BookShelf.addBook(..))")
public void aroundAddAdvice(ProceedingJoinPoint pjp){
    Object[] arguments = pjp.getArgs();
    for (Object object : arguments) {
        System.out.println("Book being added is : " + object);
    }
    try {
        pjp.proceed();
    } catch (Throwable e) {
        e.printStackTrace();
    }
} 

Ici ce que le ProceedingJoinPoint fera spécial comparer à " JointPoint` ?

Aussi ce pjp.proceed() fera pour nous ?

OriginalL'auteur Human Being | 2013-04-03