假设我有一个下面的表达式,需要使用 MVEL 进行评估。
( ( ( A * B ) + C )/D )
假设 B 的值为 NULL,则 MVEL 将“A * B”计算为 FALSE。 “(A * B) + C”变为 FalseC 然后FalseC/D抛出异常
如何防止这种情况......?
最佳答案
到目前为止,我们已经解决了这个问题,方法如下。 如果您实际上在 Mvel API 类中调试它,它们会在这种特殊情况下显式返回 false。如果 Mvel 能解决这个问题就好了。但我也遇到了同样的问题,所以我们做了什么,我们在执行表达式之前创建了一些智能,我们修改了表达式并包含“IF”条件来检查为空且运算符为“/”或“*”的字段",返回null。
关于java - 如果值为 null,Mvel 表达式求值问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20221513/