Java SE 6新特点: 对脚本语言的支持[Java编程]
本文“Java SE 6新特点: 对脚本语言的支持[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
2006 年底,Sun 公司公布了 Java Standard Edition 6(Java SE 6)的终究正式版,代号 Mustang(野马).跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的晋升.与 Tiger 在 API 库方面的大幅度加强相比,固然 Mustang 在 API 库方面的新特点显得不太多,但是也供应了很多实用和便利的功效:在脚本,WebService,XML,编译器 API,数据库,JMX,网络 和 Instrumentation 方面都有不错的新特点和功效加强.
本系列 文章主要介绍 Java SE 6 在 API 库方面的部份新特点,通过一些例子和讲授,帮忙开辟者在编程实践当中更好的应用 Java SE 6,提高开辟效率.本文是系列文章的第 6 篇,介绍了 Java SE 6 在脚本编程方面的新特点.
Java 脚本 API 概述
Java SE 6 引入了对 Java Specification Request(JSR)223 的支持,JSR 223 旨在定义一个统一的标准,使得 Java 利用程序可以通过一套固定的接口与各种脚本引擎交互,从而到达在 Java 平台上调用各种脚本语言的目的.javax.script 包定义了这些接口,即 Java 脚本编程 API.Java 脚本 API 的目标与 Apache 项目 Bean Script Framework(BSF)近似,通过它 Java 利用程序就可以通过虚拟机调用各种脚本,同时,脚本语言也能拜候利用程序中的 Java 对象和办法.Java 脚本 API 是连通 Java 平台和脚本语言的桥梁.首先,通过它为数众多的现有 Java 库就可以被各种脚本语言所操纵,节俭了开辟本钱缩短了开辟周期;其次,可以把一些复杂异变的业务逻辑交给脚本语言处理,这又大大提高了开辟效率.
在 javax.script 包中定义的实现类并不多,主如果一些接口和对应的抽象类,图 1 显示了此中包含的各个接口和类.
图 1. javax.script 包大要
这个包的具体实现类少的根本缘由是这个包只是定义了一个编程接口的框架标准,至于对若何解析运行具体的脚本语言,还需求由第三方供应实现.固然这些脚本引擎的实现各不相同,但是关于 Java 脚本 API 的利用者来说,这些具体的实现被很好的断绝躲藏了.Java 脚本 API 为开辟者供应了以下功效:
获得脚本程序输入,通过脚本引擎运行脚本并返回运行后果,这是最核心的接口.
发现脚本引擎,查询脚本引擎信息.
通过脚本引擎的运行上下文在脚本和 Java 平台间交换数据.
通过 Java 利用程序调用脚本函数.
在具体介绍这四个功效之前,我们先通过一个简单的例子来展示若何通过 Java 语言来运行脚本程序,这里仍旧以经典的“Hello World”开始.
清单 1. Hello World
import javax.script.*;
public class HelloWorld {
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");
engine.eval("print ('Hello World')");
}
}
这个例子非常直观,只要通过 ScriptEngineManager 和 ScriptEngine 这两个类便可以完成最简单的调用.首先,ScriptEngineManager 实例成立一个 ScriptEngine 实例,然后返回的 ScriptEngine 实例解析 JavaScript 脚本,输出运行后果.运行这段程序,终端上会输出“Hello World“.在履行 eval 函数的历程中大概会有 ScriptEngine 非常抛出,引发这个非常被抛出的缘由普通是由脚本输入语法有误造成的.在对整个 API 有了大致的概念之后,我们便可以开始介绍各个具体的功效了.
以上是“Java SE 6新特点: 对脚本语言的支持[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |