快速业务通道

Java SE 6新特性: 对脚本语言的支持 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
ScriptEngineManager();     ScriptEngine engine = manager.getEngineByName("javascript");     engine.put("greeting", "Good Morning!");     if (engine instanceof Compilable) {       Compilable compilable = (Compilable) engine;       CompiledScript compiledScript = compilable.compile(script);       compiledScript.eval();       compiledScript.eval();     }   } }

与 InovcableTest 类似,也应该先通过 instanceof 操作判断脚本引擎是否支持编译操作,防止预料外的异常抛出。并且我们可以发现同一段编译过的脚本,在第二次运行时 greeting 变量的内容被上一次的运行改变了,导致输出不一致:

图 5. 程序 CompilableTest 的输出

Java SE 6新特性: 对脚本语言的支持 - 编程入门网

jrunscript 工具

Java SE 6 还为运行脚本添加了一个专门的工具 —— jrunscript。jrunscript 支持两种运行方式:一种是交互式,即边读取边解析运行,这种方式使得用户可以方便调试脚本程序,马上获取预期结果;还有一种就是批处理式,即读取并运行整个脚本文件。用户可以把它想象成一个万能脚本解释器,即它可以运行任意脚本程序,而且它还是跨平台的,当然所有这一切都有一个前提,那就是必须告诉它相应的脚本引擎的位置。默认即支持的脚本是 JavaScript,这意味着用户可以无需任何设置,通过 jrunscript 在任何支持 Java 的平台上运行任何 JavaScript 脚本;如果想运行其他脚本,可以通过 -l 指定以何种脚本引擎运行脚本。不过这个工具仍是实验性质的,不一定会包含在 Java 的后续版本中,无论如何,它仍是一个非常有用的工具。

结束语

在 Java 平台上使用脚本语言编程非常方便,因为 Java 脚本 API 相对其他包要小很多。通过 javax.script 包提供的接口和类我们可以很方便为我们的 Java 应用程序添加对脚本语言的支持。开发者只要遵照 Java 脚本 API 开发应用程序,开发中就无需关注具体的脚本语言细节,应用程序就可以动态支持任何符合 JSR 223 标准的脚本语言,不仅如此,只要按照 JSR 223 标准开发,用户甚至还能为 Java 平台提供一个自定义脚本语言的解释器。在 Java 平台上运行自己的脚本语言,这对于众多开发者来说都是非常有诱惑力的。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号