首页 > 电脑教程 > 电脑知识 > js怎么调用JAVA类的方法

js怎么调用JAVA类的方法

王林
发布: 2024-01-15 17:48:11
转载
1538 人浏览过

js怎么调用JAVA类的方法

js怎么调用JAVA类的方法?具体代码

用ajax的方法.

首先,将要调用的类名和方法名作为参数传递给某个servlet。这一步可以通过使用框架或直接使用XMLHttpRequest对象来实现。

另外,要调用的类名和类的完整包路径最好写在配置文件里

这里假设类名为Hello,方法名为sayHello,并且sayHello方法不带参数,类路径为com.demo.Hello

配置文件AjaxConfig.properties

Hello = com.demo.Hello

于是传入的参数为 class=Hello&method=sayHello

在servlet中作如下处理:

String className=request.getParameter("classname");

String methodName=request.getParameter("method");

String classPath=null;

.

读取配置文件,取出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) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (NoSuchMethodException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

try {

returnValue=(String)m.invoke(c.newInstance(), new Object[0]);//调用你所指定的方法

} catch (IllegalArgumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (InvocationTargetException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

最后,将returnValue的值返回给客户端即可

类Hello.java

public class Hello

{

public String sayHello()

{

return "hello";

}

}

不明白的加67919823,我们一起讨论呀

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();

如何在JavaScript中使用java类中的方法

很难! 一个是前台,一个是后台,不过AJAX 实现了这个思想!. 下面是一个AJAX实例:

// JavaScript Document

var xmlHttp;

function GetXmlHttpObject()

{

var xhr=null;

try

{

// Firefox, Opera 8.0+, Safari

xhr=new XMLHttpRequest();

}catch (e)

{

// Internet Explorer

try

{

xhr=new ActiveXObject("Msxml2.XMLHTTP");

}catch (e)

{

xhr=new ActiveXObject("Microsoft.XMLHTTP");

}

}

return xhr;

}

function getDataByDept(str)

{

xmlHttp = GetXmlHttpObject();

if(xmlHttp==null)

{

alert("很抱歉!您的浏览器不支持AJAX!");

return;

}

var url = "/intcard/jsp/employee.do?method=getByDept"

xmlHttp.onReadyStateChange=stateChanged;

xmlHttp.open("post",url,true);

xmlHttp.setRequestHeader('Content-Type', 'application/x--form-urlencoded;charset=UTF-8');

xmlHttp.send("dept=" + str);

}

function stateChanged()

{

if(xmlHttp.readyState == 4)

{

var result = xmlHttp.responseText;

document.getElementById("select_employees").innerHTML = result;

}

}

思想就是,通过HTML控件的事件调用JS的方法,在JS理通过httprequest对象的open方法调用服务器脚本----- 在服务器脚本里 你可以用javabean的方法,并且把计算结果传递给JS.曲线实现了你的思想

以上是js怎么调用JAVA类的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:docexcel.net
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板