java实现jseval功能计算机等级考试

文章作者 100test 发表时间 2009:07:08 04:47:19
来源 100Test.Com百考试题网


  在实际的项目开发中,我们有时候需要在java中实现如javascript eval的功能。比如在财务系统和企业管理系统中我们经常通过比较复杂的公式进行计算,在项目中我们一般会把计算公式解析成字符串存储在数据库或配置文件中,且此公式在后期中可以进行调整,这样我们在实际运算的时候就需要对存储的公式进行解析和参数替换来得到计算结果,这样公式解析就成了个比较麻烦的事情,且很容易产生bug。现在给大家推荐一种java版的 js eval功能的全国计算机等级考试网,加入收藏控件bsh(Beanshell ),它能够帮助我们实现比 js eval更强大的功能,一下提供一个简单的实例供大家参考:
  public static void main(String[] args) throws EvalError {
  Interpreter bsh = new Interpreter().
  StringBuffer yunsuan=new StringBuffer(" ").
  yunsuan.append(" int aa=0. ").
  yunsuan.append(" if(sb>.ba){aa=10.} ").
  yunsuan.append(" else if(sb<.=ba){aa=20.} ").
  String ddd=yunsuan.toString().replaceAll("sb", "300").
  ddd=ddd.replaceAll("ba", "200").
  bsh.eval(ddd).
  int reint=Integer.valueOf(bsh.get("aa").toString()).
  System.out.println(reint).  
  }
  在以上实例中,我们可以根据实际情况进行实现,比如计算公式由其它方式三方获得,参数替换等。
  bsh 网址地址:
  http://www.beanshell.org/
  最新jar包地址:
  http://www.beanshell.org/download.html

相关文章


JAVA中对象的this引用计算机等级考试
Java里面Override的返回值是否必须和父类相同计算机等级考试
java读取property文件的方法计算机等级考试
tomcat6关于EL表达式的一个错误计算机等级考试
java实现jseval功能计算机等级考试
集成Java反编译功能到Eclipse和MyEclipse计算机等级考试
Java写入大量数据的实现代码计算机等级考试
OpenCms在FireFox3.5下的一个问题计算机等级考试
Java定时的三种方法计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛