问题:在Groovy Script中,还有部分脚本来自其他媒体,比如数据库中.
需要把数据库中的代码和当前脚本一起混合执行.
解决:在当前Groovy Script中,用evaluate(String Script)来执行.
就可以了.
比如下列代码:
payitem=null;
CURRENT_CATAGORY.find(){if(it.payitemcode==Payitemcode)payitem=it}
evaluate(payitem.businessrule);
一段可以完全执行演示的代码:
import java.util.*;
mine=new ArrayList();
mine.add("123");
mine.add("3454");
script="evaluate(\"println('1sfdas')\n\");";
//keep variable self
evaluate(script);
打印出来