如何在完整包而不是特定类上应用aspectj?
我的代码就像这样
public abstract aspect BasicLogModel {
ch.qos.logback.classic.Logger logger = (ch.qos.logback.classic.Logger) LoggerFactory
.getLogger(ModArc.class);
pointcut greeting() : execution(* Model.ModArc*(..));
// this function will work before any function execution
before() : greeting() {
}
}
使用这个代码记录器只适用于ModArc类,但我需要记录器才能获得完整的包,这是模型,我需要做出哪些更改请给出一些建议。
提前致谢
答案 0 :(得分:1)
Atm我无法测试我写下的内容,但我会写这样的内容
execution(* Model..*(..))
希望它有所帮助。
答案 1 :(得分:0)
我用它来记录org.example.batch包中的每个方法调用。注意'..'它可能(或不)对你有用
execution(* org.example.batch..*.*(..))
The ".." wildcard matches any sequence of characters that start and end with a ".", so it can be used to pick out all types in any subpackage, or all inner types
更新:如果您正在尝试基于aspectj实现日志记录解决方案 - 它已经是described。