1

我知道我们可以通过DWR library在 Javascript 中使用 Java 对象来做到这一点。但我想知道我们是否可以使用纯 Javascript 对象实际实例Java Objects化?Javascript

我在互联网上搜索并找到了这个链接这个Packages object用 Javascript讲述的链接。我什至读到这个对象从 JS 1.1 开始就是 JS 的一部分,这是真的吗?

但是当我实际使用时var myClass = new Packages.myPackage.myClass();,它说Packages没有定义,显然我在这里遗漏了一些东西。

对于我的用例,我必须Java Pojo在 JS 中实例化 a 。关于如何实现这一目标的任何线索?

4

2 回答 2

1

此功能取决于 JavaScript 引擎(即运行 JavaScript 的解释器)。我没有尝试在浏览器中执行此操作,但启用 Java 插件时可能会这样做(出于安全原因,您不应该这样做,至少不是无条件的)。

特殊对象PackagesRhino 引擎的一个特性,例如,它是运行在 Java VM 中的 JavaScript 解释器。重载了访问器方法,Packages因此当您编写 时Packages.com.pany.Foo,它将在内部查找类并返回以一种有用的方式连接 Java 和 JavaScript 世界的东西。

您可以在此处找到教程:https ://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Scripting_Java

于 2014-10-27T13:08:45.967 回答
0

您可以在 new 关键字的帮助下创建 Java 对象并将其分配给 JavaScript 中的变量。创建 Java 类的实例时,JavaScript 会自动创建 JavaObject 对象。例如,您可以从 JavaScript 实例化一个 Java 字符串并将其分配给一个变量。然后你可以使用点运算符来访问对象的length()

var myString=new java.lang.String("Test String");
alert(myString.length()); //prints 11

您可以点击此链接了解更多信息http://www.sitepoint.com/connect-java-to-javascript-with-liveconnect/

于 2014-10-27T12:35:36.937 回答