30、深入剖析传统追踪与 AOP 追踪技术

深入剖析传统追踪与 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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值