gpt4 book ai didi

java - 在 javascript 代码中调用 java 方法

转载 作者:IT老高 更新时间:2023-10-28 20:53:33 27 4
gpt4 key购买 nike

我创建了一个 java 类内容方法返回一个字符串,我的问题是如何在我的 javascript 代码中调用此函数以使用 java 方法的返回值。我想调用浏览器中嵌入的客户端Java代码。

这是我所说的一个例子:

在我的网页中,我有一个 javascript 代码,下面是其中的一些:

    function createChartControl(htmlDiv1)
{
// Initialize Gantt data structures
//project 1
var parentTask1 = new GanttTaskInfo(1, "Old code review", new Date(2010, 5, 11), 208, 50, "");
......................

我想创建一个 java 类内容方法来为这个 javascript 函数“GanttTaskInfo”提供数据。例如获取名称、获取 id 和日期的函数。好吧,我想这次我很清楚:D我搜索了一种在javascript中调用java方法的方法,我发现了你所说的applet,但我认为它对我没有用。再次感谢

最佳答案

当它在服务器端时,使用 Web 服务 - 可能是带有 JSON 的 RESTful。

  • 创建一个网络服务(例如 Tomcat)
  • 从 JavaScript 调用其 URL(例如 with JQuery 或 dojo)

当 Java 代码在 applet 中时,您可以使用 JavaScript 桥。 Java 和 JavaScript 编程语言之间的桥梁,非正式地称为 LiveConnect , 在 Java 插件中实现。以前特定于 Mozilla 的 LiveConnect 功能,例如调用静态 Java 方法、实例化新 Java 对象和从 JavaScript 引用第三方包的能力,现在可在所有浏览器中使用。

以下是文档中的示例。查看methodReturningString

Java 代码:

public class MethodInvocation extends Applet {
public void noArgMethod() { ... }
public void someMethod(String arg) { ... }
public void someMethod(int arg) { ... }
public int methodReturningInt() { return 5; }
public String methodReturningString() { return "Hello"; }
public OtherClass methodReturningObject() { return new OtherClass(); }
}

public class OtherClass {
public void anotherMethod();
}

网页和 JavaScript 代码:

<applet id="app"
archive="examples.jar"
code="MethodInvocation" ...>
</applet>
<script language="javascript">
app.noArgMethod();
app.someMethod("Hello");
app.someMethod(5);
var five = app.methodReturningInt();
var hello = app.methodReturningString();
app.methodReturningObject().anotherMethod();
</script>

关于java - 在 javascript 代码中调用 java 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6649125/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com