在使用alogic框架进行数据解析的时候经常会调用PropertiesConstants.transform()来进行数据填充。数据填充默认替换符是${}。如a=${abc}-123,则会从参数中查找abc的值替换到${abc}从而计算出a的值。如果此时abc的值为testValue,则计算出来的a=testValue-123;如果此时abc=${abc},则a的值替换后还是a=${abc}-123,就会导致一直递归替换,直到栈溢出。
故在使用过程中需要避免参数替换的时候不会存在重复递归${}。如果业务不需要使用到变量替换则不应该使用PropertiesConstants.transform()来获取参数。
具体代码如下图