使用基于注释的 AOP 修改控制器响应



我正在尝试通过AOP向控制器响应添加标头,但我不确定如何访问控制器或控制器的响应。

我该怎么做?

这是我当前的注释:

@Retention(RetentionPolicy.RUNTIME)
@Target([ElementType.METHOD, ElementType.TYPE, ElementType.FIELD])
public @interface NoCaching {
}

这是我目前的方面:

@Aspect
@Component("noCachingAspect")
class NoCachingAspect {
    @Pointcut("@annotation(com.grailsrocks.cacheheaders.NoCaching)")
    public void nameDoesntMatter() {
    }
    @Before("com.grailsrocks.cacheheaders.NoCachingAspect.nameDoesntMatter()")
    public void beforeMethod(JoinPoint joinPoint) throws Throwable {
        println 'hellowoeijf'
    }
}

以下是我如何使用注释:

@NoCaching
    def annotations(){
        println 'bar'
    }

如何访问注释所针对的控制器以修改响应对象?

不久前我写了一篇关于这个的博客文章,见 http://burtbeckwith.com/blog/?p=80

最新更新