QLExpress脚本语言技术讲解(5)------对脚本语言的进一步优化,变成中文的脚本语言

 

上一篇讲到的是对运行环境的扩展:

QLExpress脚本语言技术讲解(5)------对脚本语言的进一步优化,变成中文的脚本语言_第1张图片

 

这一篇主要的目标是把

***************************************************

执行的脚本:orderService.orderPay(id);

***************************************************

脚本换成 更容易明白的脚本:

***************************************************

执行的脚本: 支付订单(id)

***************************************************

改造部分如下:

QLExpress脚本语言技术讲解(5)------对脚本语言的进一步优化,变成中文的脚本语言_第2张图片

 

为此我们修改下商品的类:

private  void initRunner(ExpressRunner runner)
 {
  if(isInitialRunner == true){
   return ;
  }
  synchronized (runner) {
   if(isInitialRunner == true){
    return ;
   }
   try {
    //在此可以加入预定义函数

    //bean方法
    runner.addFunctionOfServiceMethod("支付订单",applicationContext.getBean("orderService"), "orderPay", new Class[] {Long.class}, null);
   } catch (Exception e) {
    throw new RuntimeException("初始化失败表达式",e);
   }   
  }
  isInitialRunner = true;  
 } 



好,大功告成。ExpressRunner此外还提供了非常多的扩展接口,用于脚本语言的抽象,这个也是这个语言的独到之处,精华所在。

请参考: http://code.taobao.org/p/QLExpress/wiki/index/ ,下篇会隆重介绍这些接口的扩展。

你可能感兴趣的:(优化,exception,脚本,Class,扩展,语言)