深入剖析传统追踪与 AOP 追踪技术
1. 传统追踪技术的实现
传统追踪方式若不使用 AspectJ,会涉及大量重复代码。以使用 log4j API 对 Order 类进行修改为例,需要对类中的每个方法进行插桩以记录方法入口,示例代码如下:
package ajia.domain;
import ...
...
public class Order extends DomainEntity {
...
private Logger logger = Logger.getLogger("trace");
public void addItem(Product product, int quantity) {
logger.log(Level.INFO,
"Entering [Order.addItem]");
...
}
public void removeItem(Product product, int quantity) {
logger.log(Level.INFO,
"Entering [Order.removeItem]");
...
}
public boolean isPlaced() {
logger.log(Level.INFO,
"Entering [Order.isPlaced]");
...
}
publi
超级会员免费看
订阅专栏 解锁全文
45

被折叠的 条评论
为什么被折叠?



