js调用java,js调用java类中的方法

发布时间:2022-11-30

本文目录一览:

1、在html页面中如何用js调用java类
2、js怎么调用JAVA方法
3、怎么实现javascript中调用java类中的方法
4、如何实现js调用java函数
5、js怎么调用java 类中方法?

在html页面中如何用js调用java类

在html页面中,使用js调用java类要使用ajax,具体方法步骤如下:

  1. 将要调用的类名和方法名作为参数传给某个servlet。这一步的方法有许多种,可以用框架,或者直接用xmlHttpRequest对象;
  2. 要调用的类名和类的完整包路径最好写在配置文件里,这里假设类名为Hello,方法名为sayHello,并且sayHello方法不带参数,类路径为com.demo.Hello。
  3. 配置文件AjaxConfig.properties:
    Hello = com.demo.Hello
    
  4. 传入的参数设置为 class=Hellomethod=sayHello。 在servlet中作如下处理:
String className = request.getParameter("classname");
String methodName = request.getParameter("method");
String classPath = null;
  1. 读取配置文件,取出className所对应的值放入classPath变量中,
Class c = Class.forName(classPath); // 加载你所指定的类
Class param[] = new Class[0]; // 方法的参数为0个
Method m = null;
String returnValue = null; // 返回值
try {
    m = c.getMethod("sayHello", param); // 获取你所指定的类中的指定方法
} catch (SecurityException e) {
    e.printStackTrace();
} catch (NoSuchMethodException e) {
    e.printStackTrace();
}
try {
    returnValue = (String) m.invoke(c.newInstance(), new Object[0]); // 调用你所指定的方法
} catch (IllegalArgumentException e) {
    e.printStackTrace();
} catch (IllegalAccessException e) {
    e.printStackTrace();
} catch (InvocationTargetException e) {
    e.printStackTrace();
} catch (InstantiationException e) {
    e.printStackTrace();
}
  1. 将returnValue的值返回给客户端即可。 类Hello.java:
public class Hello {
    public String sayHello() {
        return "hello";
    }
}

js怎么调用JAVA方法

一般的浏览器中是无法通过js调用本地java程序的,但是可以调用嵌入到网页的applet的方法。交互方式如下:

<applet codebase="." width="400" height="400" name="MyApplet" code="test.applets.MyApplet1.class">
</applet>
// js访问applet属性:document.appletName.appletField (属性必须是public的)
// js访问Applet方法:document.appletName.appletMethod (方法必须是public的)
function showLable() {
    // 调用test.applets.MyApplet1类的invokeByJS方法
    document.applets["MyApplet"].invokeByJS('myvalue');
}

怎么实现javascript中调用java类中的方法

为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制。只要调用addJavascriptInterface方法即可映射一个Java对象到JavaScript对象上。

1、映射Java对象到JavaScript对象上

代码如下:

mWebView = (WebView) findViewById(R.id.wv_content);
mWebView.setVerticalScrollbarOverlay(true);
final WebSettings settings = mWebView.getSettings();
settings.setSupportZoom(true);
// WebView启用Javascript脚本执行
settings.setJavaScriptEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
// 映射Java对象到一个名为”js2java“的Javascript对象上
// JavaScript中可以通过"window.js2java"来调用Java对象的方法
mWebView.addJavascriptInterface(new JSInvokeClass(), "js2java");
/** 网页Javascript调用接口 **/
class JSInvokeClass {
    public void back() {
        activity.finish();
    }
}

2、JavaScript调用Java对象示例

调用上述JSInvokeClass类对象的back方法,如下:

window.js2java.back();

如何实现js调用java函数

思路

  1. java端建立servlet服务,js通过ajax等方式调用servlet;
  2. 可以通过dwr等第三方方式集成,然后调用java方法;
  3. 用jsp,使用<% %>的方式进行脚本执行。

举例

var a = "<%=Test.buttonTest()%>"; // Test就是java类, buttonTest就是java的函数

js怎么调用java 类中方法?

// 上面我用java代码根据id取得了一个user类的实体 u 下面就可以用js操作显示等等
alert(); // 在窗口打印一个用户名