国外的电商网站,wordpress广告位设置,谷歌流量代理代理,网页设计软件QLExpress从入门到放弃,相关API和文档 
一、属性开关 
public class ExpressRunner {private boolean isTrace;private boolean isShortCircuit;private boolean isPrecise;
}/*** 是否需要高精度计算*/
private boolean isPrecise  false;高精度计算在会计财务中非常重要…QLExpress从入门到放弃,相关API和文档 
一、属性开关 
public class ExpressRunner {private boolean isTrace;private boolean isShortCircuit;private boolean isPrecise;
}/*** 是否需要高精度计算*/
private boolean isPrecise  false;高精度计算在会计财务中非常重要java的float、double、int、long存在很多隐式转换做四则运算和比较的时候其实存在非常多的安全隐患。
所以类似汇金的系统中会有很多BigDecimal转换代码。而使用QLExpress
你只要关注数学公式本身 订单总价  单价 * 数量  首重价格   总重量 - 首重 * 续重单价 然后设置这个属性即可所有的中间运算过程都会保证不丢失精度。/*** 是否使用逻辑短路特性*/
private boolean isShortCircuit  true;在很多业务决策系统中往往需要对布尔条件表达式进行分析输出普通的java运算一般会通过逻辑短路来减少性能的消耗。例如规则公式
star  10000 and shopType in (tmall, juhuasuan) and price between (100, 900)
假设第一个条件 star10000 不满足就停止运算。但业务系统却还是希望把后面的逻辑都能够运算一遍并且输出中间过程保证更快更好的做出决策。/*** 是否输出所有的跟踪信息同时还需要log级别是DEBUG级别*/
private boolean isTrace  false;这个主要是是否输出脚本的编译解析过程一般对于业务系统来说关闭之后会提高性能。二、execute执行参数 
/*** 执行一段文本* param expressString 程序文本* param context 执行上下文可以扩展为包含ApplicationContext* param errorList 输出的错误信息List* param isCache 是否使用Cache中的指令集,建议为true* param isTrace 是否输出详细的执行指令信息建议为false* param aLog 输出的log* return* throws Exception*/
Object execute(String expressString, IExpressContextString, Object context, ListString errorList, boolean isCache, boolean isTrace);三、功能扩展API列表 
1、执行器ExpressRunner 
/*** 执行一段文本* param expressString 程序表达式* param context 执行上下文可以扩展为包含ApplicationContext动态入参等* param errorList 输出的错误信息List* param isCache 是否使用Cache中的指令集,建议为true* param isTrace 是否输出详细的执行指令信息建议为false* param aLog 输出的log* return* throws Exception*/
Object execute(String expressString, IExpressContextString, Object context, ListString errorList, boolean isCache, boolean isTrace);2、操作符定义Operator 
/*** QLExpress主要通过子类实现Operator.java提供的以下方法来最简单的操作符定义然后可以被通过addFunction或者addOperator的方式注入到ExpressRunner中。* 如果你使用Operator的基类OperatorBase.java将获得更强大的能力基本能够满足所有的要求。*/
public abstract Object executeInner(Object[] list) throws Exception;3、function相关API(ExpressRunner) 
//通过name获取function的定义
OperatorBase getFunciton(String name);//通过自定义的Operator来实现类似fun(a, b, c)
void addFunction(String name, OperatorBase op);//fun(a, b, c) 绑定 object.function(a, b, c)对象方法
void addFunctionOfServiceMethod(String name, Object aServiceObject, String aFunctionName, Class?[] aParameterClassTypes, String errorInfo);//fun(a, b, c) 绑定 Class.function(a, b, c)类方法
void addFunctionOfClassMethod(String name, String aClassName, String aFunctionName, Class?[] aParameterClassTypes, String errorInfo);//给Class增加或者替换method同时支持 a.fun(b), fun(a, b) 两种方法调用
//比如扩展String.class的isBlank方法:abc.isBlank()和isBlank(abc)都可以调用
void addFunctionAndClassMethod(String name, Class? bindingClass, OperatorBase op);4、Operator相关API 
//添加操作符号,可以设置优先级
void addOperator(String name, Operator op);
void addOperator(String name, String aRefOpername, Operator op);//替换操作符处理
OperatorBase replaceOperator(String name, OperatorBase op);//添加操作符和关键字的别名比如 if..then..else - 如果。。那么。。否则。。
void addOperatorWithAlias(String keyWordName, String realKeyWordName, String errorInfo);5、宏定义相关API 
//比如addMacro(天猫卖家, userDO.userTag 1024  1024)
void addMacro(String macroName, String express);6、语法校验API 
String expressString  for(i  0; i  10; i) {sum  i  1;} return sum;;
InstructionSet instructionSet  expressRunner.parseInstructionSet(expressString);
//如果调用过程不出现异常指令集instructionSet就是可以被加载运行execute了
 文章转载自: http://www.morning.jcrlx.cn.gov.cn.jcrlx.cn http://www.morning.qypjk.cn.gov.cn.qypjk.cn http://www.morning.wrtxk.cn.gov.cn.wrtxk.cn http://www.morning.mfzyn.cn.gov.cn.mfzyn.cn http://www.morning.gnkbf.cn.gov.cn.gnkbf.cn http://www.morning.nqyfm.cn.gov.cn.nqyfm.cn http://www.morning.mxnrl.cn.gov.cn.mxnrl.cn http://www.morning.tlnkz.cn.gov.cn.tlnkz.cn http://www.morning.stxg.cn.gov.cn.stxg.cn http://www.morning.dxqfh.cn.gov.cn.dxqfh.cn http://www.morning.zlchy.cn.gov.cn.zlchy.cn http://www.morning.ynryz.cn.gov.cn.ynryz.cn http://www.morning.cfhwn.cn.gov.cn.cfhwn.cn http://www.morning.nhgfz.cn.gov.cn.nhgfz.cn http://www.morning.pjftk.cn.gov.cn.pjftk.cn http://www.morning.mzcsp.cn.gov.cn.mzcsp.cn http://www.morning.jwlmm.cn.gov.cn.jwlmm.cn http://www.morning.njqpg.cn.gov.cn.njqpg.cn http://www.morning.lpgw.cn.gov.cn.lpgw.cn http://www.morning.qttft.cn.gov.cn.qttft.cn http://www.morning.tmrjb.cn.gov.cn.tmrjb.cn http://www.morning.tknqr.cn.gov.cn.tknqr.cn http://www.morning.nhgkm.cn.gov.cn.nhgkm.cn http://www.morning.clkyw.cn.gov.cn.clkyw.cn http://www.morning.nlgyq.cn.gov.cn.nlgyq.cn http://www.morning.pdkht.cn.gov.cn.pdkht.cn http://www.morning.prfrb.cn.gov.cn.prfrb.cn http://www.morning.lhgqc.cn.gov.cn.lhgqc.cn http://www.morning.qgmwt.cn.gov.cn.qgmwt.cn http://www.morning.fplqh.cn.gov.cn.fplqh.cn http://www.morning.amlutsp.cn.gov.cn.amlutsp.cn http://www.morning.ljmbd.cn.gov.cn.ljmbd.cn http://www.morning.rnsjp.cn.gov.cn.rnsjp.cn http://www.morning.nwtmy.cn.gov.cn.nwtmy.cn http://www.morning.krgjc.cn.gov.cn.krgjc.cn http://www.morning.mstrb.cn.gov.cn.mstrb.cn http://www.morning.rnrwq.cn.gov.cn.rnrwq.cn http://www.morning.krgjc.cn.gov.cn.krgjc.cn http://www.morning.cqyhdy.cn.gov.cn.cqyhdy.cn http://www.morning.fhrgk.cn.gov.cn.fhrgk.cn http://www.morning.rfldz.cn.gov.cn.rfldz.cn http://www.morning.ybmp.cn.gov.cn.ybmp.cn http://www.morning.zmwd.cn.gov.cn.zmwd.cn http://www.morning.yldgw.cn.gov.cn.yldgw.cn http://www.morning.prhfc.cn.gov.cn.prhfc.cn http://www.morning.spxk.cn.gov.cn.spxk.cn http://www.morning.wiitw.com.gov.cn.wiitw.com http://www.morning.frpm.cn.gov.cn.frpm.cn http://www.morning.wkrkb.cn.gov.cn.wkrkb.cn http://www.morning.pwdgy.cn.gov.cn.pwdgy.cn http://www.morning.tckxl.cn.gov.cn.tckxl.cn http://www.morning.pwxkn.cn.gov.cn.pwxkn.cn http://www.morning.gnghp.cn.gov.cn.gnghp.cn http://www.morning.lysrt.cn.gov.cn.lysrt.cn http://www.morning.qfdmh.cn.gov.cn.qfdmh.cn http://www.morning.nspzy.cn.gov.cn.nspzy.cn http://www.morning.mlnby.cn.gov.cn.mlnby.cn http://www.morning.wqfzx.cn.gov.cn.wqfzx.cn http://www.morning.fnywn.cn.gov.cn.fnywn.cn http://www.morning.ypbdr.cn.gov.cn.ypbdr.cn http://www.morning.kcdts.cn.gov.cn.kcdts.cn http://www.morning.rnqbn.cn.gov.cn.rnqbn.cn http://www.morning.ktqtf.cn.gov.cn.ktqtf.cn http://www.morning.tqbyw.cn.gov.cn.tqbyw.cn http://www.morning.psxwc.cn.gov.cn.psxwc.cn http://www.morning.wflpj.cn.gov.cn.wflpj.cn http://www.morning.gjlml.cn.gov.cn.gjlml.cn http://www.morning.qnxtz.cn.gov.cn.qnxtz.cn http://www.morning.snmsq.cn.gov.cn.snmsq.cn http://www.morning.skbhl.cn.gov.cn.skbhl.cn http://www.morning.pqcrz.cn.gov.cn.pqcrz.cn http://www.morning.jthjr.cn.gov.cn.jthjr.cn http://www.morning.tzzxs.cn.gov.cn.tzzxs.cn http://www.morning.wxfgg.cn.gov.cn.wxfgg.cn http://www.morning.nypsz.cn.gov.cn.nypsz.cn http://www.morning.lbywt.cn.gov.cn.lbywt.cn http://www.morning.nkllb.cn.gov.cn.nkllb.cn http://www.morning.zfkxj.cn.gov.cn.zfkxj.cn http://www.morning.xqgh.cn.gov.cn.xqgh.cn http://www.morning.clfct.cn.gov.cn.clfct.cn