易截截图软件、单文件、免安装、纯绿色、仅160KB

Java 6 中也可以运行 javascript 喽 (转)

给 Java SE 注入脚本语言的活力
Mustang 的脚本语言新特性

文档选项

将此页作为电子邮件发送

将此页作为电子邮件发送



级别: 中级
吴 玥颢 (wuyuehao@cn.ibm.com), 软件工程师, IBM
2006 年 10 月 30 日
在即将发布的 Java SE6(Mustang)中,增加了对脚本语言的支持。通过对脚本语言的调用,使得一些通常用 Java 比较难于实现的功能变得简单和轻便。脚本语言与 Java 之间的互操作将变得优雅而直接。
脚本语言与 Java
假设我们有一个简单的需求,察看一份文档中 5 个字母组成的单词的个数。用 Java 一般实现如下:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Find5Words {
public static void main(String[] args) throws IOException {
String result = "";
String line = null;
int num = 0;
FileReader fr = new FileReader("filename");
BufferedReader br = new BufferedReader(fr);
while ((line = br.readLine()) != null) {
result += line;
}
br.close();
fr.close();
String[] s = result.split(" ");
for (int i = 0; i < s.length; i++) {
if (s[i].matches("^\\w{5}$")) {
num++;
}
}
System.out.println(num);
}
}

再看看 Perl 语言实现同样功能的代码:
open FILE, "<filename ";
while (<FILE>) {
for (split) {
$num++ if /^\w{5}$/
}
}
print $num;

那么有没有一种优雅的方式将 Java 与脚本语言结合呢,在今年秋季即将发布的 Java SE6(代号 Mustang)中,这将成为现实。

回页首

Mustang 的脚本引擎
JSR 233 为 Java 设计了一套脚本语言 API。这一套 API 提供了在 Java 程序中调用各种脚本语言引擎的接口。任何实现了这一接口的脚本语言引擎都可以在 Java 程序中被调用。在 Mustang 的发行版本中包括了一个基于 Mozilla Rhino 的 JavaScript 脚本引擎。
Mozilla Rhino
Rhino 是一个纯 Java 的开源的 JavaScript 实现。他的名字来源于 O'Reilly 关于 JavaScript 的书的封面:

Rhino 项目可以追朔到 1997 年,当时 Netscape 计划开发一个纯 Java 实现的


相关文档:

JavaScript 获取浏览器的显示区域大小信息

网页可见区域宽:document.body.clientWidth;
网页可见区域高:document.body.clientHeight;
网页可见区域高:document.body.offsetWidth (包括边线的宽);
网页可见区域高:document.body.offsetHeight (包括边线的宽);
网页正文全文宽:document.body.scrollWidth;
网页正文全文高:document.body.scrollHeight; ......

Firefox 最新 JavaScript 引擎初探

自从 Google 推出含 V8 JavaScript 引擎的 Chrome 以来,公众对 JavaScript
引擎执行效率的胃口又一次被提高,众多浏览器的开发者们绞尽脑汁提升他们的 JavaScript 性能,Opera 最新的10.50 版的 Carakan

引擎据称已经超过 V8,而 Firefox 的开发者们也不甘示弱。
最近升级到 Firefox 3.6 的用户已经发现他们的 Java ......

Java中int 和 Integer 的区别






< type="text/javascript">
document.body.oncopy = function() {
if (window.clipboardData) {
setTimeout(function() {
......

Java程序员的知识架构浅析

作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。我想就我自己读过的技术书籍中挑选出来一些,
按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。
一、Java编程入门类
对于没有Java编程经验的Java程序员要入门,随便读什么入门书籍都一 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号