Monitor the changes in EOImpl.java side

本文介绍如何在特定框架中覆写doDML方法来获取数据更改前后的内容。通过覆写此方法,可以捕获订单ID变更的情况,并根据需要采取相应措施。最后调用super.doDML()确保其他业务逻辑正常执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

You can override the doDML method and get the changes before call super.doDML();
Code with example:

    @Override
   protected void doDML(int operation, TransactionEvent event) {
     if (operation == DML_UPDATE) {
        final String ORDER_ID = "OrderId";
        // get posted value of OrderId attribute
        // this method is to get the old value before change
        Object oldOrderId = getPostedAttribute(this.getAttributeIndexOf(ORDER_ID));
        // get value of OrderId after change
        Object newOrderId = this.getAttribute(ORDER_ID);
        // compare and take some action based on the results of comparison
        if (newOrderId != null && newOrderId.equals(oldOrderId)) {
          //do sth. here
          //System.out.println("Order Id changed from " + oldOrdreId + " to " + newOrderId);
        }
        // finally calling super.doDML()
        super.doDML(operation, event);
      }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值