WEB开发网
开发学院软件开发Java 用BeanShell实现公式管理:使用Java脚本构建强大、... 阅读

用BeanShell实现公式管理:使用Java脚本构建强大、灵活的公式管理系统

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示: 清单2.publicdoublecaculateByFormula(Formulaformula,Hashtableparameters){doubleresult=0.0;try{Interpreteri=newInterpreter();//实例化一个BeanShell解释器i.eval(&

清单2.

public double caculateByFormula(Formula formula, Hashtable parameters) {     
 double result=0.0; 
 try 
 {     
 Interpreter i = new Interpreter(); 
 // 实例化一个BeanShell解释器 
 i.eval("import parse.*;"); 
 //引用公式管理系统 
 Vector para= formula.getParameters(); 
 //获取公式中包含的参数列表 
 Iterator it= para.iterator(); 
 //设置参数值 
 while (it.hasNext()){   
  String[] dec= (String[])it.next(); 
  String declare= dec[1]+ " "+ dec[0];   
  i.eval(declare);  
  String value= ((Double)parameters.get(dec[0])).toString();  
  if (value != null){   
  String assign_value= dec[0]+ "="+ value; 
  i.eval(assign_value);      
  }else{ 
  System.out.println("caculateByFormula():"+ dec[0]+ 
  "参数名不符或改参数不存在");     System.exit(1);      
  }     
 }     
 //参数设置成功,根据公式计算脚本进行计算,仅用了一行代码就完成了求值过程, 
 BeanShell值得你去了解    i.eval(formula.getScript()); 
 Double rst= (Double)i.get("result"); 
 result= rst.doubleValue();     
 }catch(Exception e){ 
 System.out.println("caculateByFormula():"+ e.getMessage());     
 } 
 return result;   
} 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:BeanShell 实现 公式

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接