【发布时间】:2014-03-08 14:09:20
【问题描述】:
我对 AspectJ 很陌生……刚开始学习。
到目前为止,我能够在我的方面获取用户定义方法的参数并在我的切入点中打印捕获的参数。
奇怪的是,我开始考虑在我的切入点的建议中打印System.out.println() 的内容并编写了以下简单代码:
HelloClass.java:
public class HelloClass
{
public static void main(String a[])
{
System.out.println("hello sachin");
}
}
HelloAspect.java:
public aspect HelloAspect
{
pointcut callPointcut(String message ) :call(void java.lang.System.out.println(String))&& args(message);
before( String message) : callPointcut(message )
{
System.out.println("Fetced in point cut:"+message);
//System.out.println("In the advice attached to the call pointcut");
}
}
然后我使用ajc HelloClass.java HelloAspect.java 编译了这两个文件
编译成功,一穿如下:
当我使用java HelloClass 运行程序时
它输出为:Hello sachin,它应该是Fetced in point cut:Hello sachin。
所以任何人都可以指出我哪里出错或遗漏了什么。 。先感谢您 。 .
【问题讨论】: