@AspectJ 语法“after() : staticinitialization(*)”
我正在尝试使用 pertypewithin 实例化模型来实现跟踪方面。 通过这种方式,我将能够为每个类的每种类型使用一个记录器。
从我们周围的一些示例中,我可以找到这段代码来初始化记录器:
public abstract aspect TraceAspect pertypewithin(com.something.*) {
abstract pointcut traced();
after() : staticinitialization(*) {
logger = Logger.getLogger(getWithinTypeName());
}
before() : traced() {
logger.log(...);
}
//....
}
不幸的是,我无法将其完全转换为 @AspectJ 语法(这是我无法控制的项目要求),尤其是我需要的部分设置记录器,仅执行该代码一次。
这可能吗?
谢谢,
I'm trying to implement a tracing aspect using the pertypewithin instantiation model.
In this way, I'll be able to use one logger per class per type.
From some examples arround the we I can find this code to init the logger:
public abstract aspect TraceAspect pertypewithin(com.something.*) {
abstract pointcut traced();
after() : staticinitialization(*) {
logger = Logger.getLogger(getWithinTypeName());
}
before() : traced() {
logger.log(...);
}
//....
}
unfortunately, I'm not able to fully translate this to the @AspectJ syntax (it's a project requirement outside my control), especially the part in with I need to setup the logger, executing that code only once.
Is this possible?
Thanks,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)