一般的浏览器中是无法通过js调用本地java程序的,但是可以调用嵌入到网页的applet的方法。交互方式如下:
成都创新互联主要从事网站设计制作、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务延津,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
applet codebase = "." width = "400" height = "400"
name= "MyApplet" code = "test.applets.MyApplet1.class"
script
// js访问applet属性:document.appletName.appletField (属性必须是public的)
// js访问Applet方法:document.appletName.appletMethod (方法必须是public的)
function showLable{
// 调用test.applets.MyApplet1类的invokeByJS方法
document.applets["MyApplet"].invokeByJS('myvalue');
}
/script
思路
1、java端建立servlet服务,js通过ajax等方式调用servlet
2、可以通过dwr等第三方方式集成,然后调用java方法
3、用jsp,使用%%的方式进行脚本执行
举例
var a= "%=Test.buttonTest()%"; //Test就是java类,buttonTest就是java的函数
\r\n\r\n//上面我用java代码根据id取得了一个user类的实体 u 下面就可以用js操作显示等等\r\nalert();//在窗口打印一个用户名\r\n\r\n
实现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();
如果你是在JSP页面里,在js代码里可以用% ...java代码....%
不过不建议混编,最好JS和JAVA代码分开,JS可以通过AJAX调用访问JAVA提供的接口,利于后期维护。
题主的问题回答:
方法1.提供一个servlet ,在servlet中调用getAllEmployees()
方法,把响应的值写入response,修改响应头为application/json,在页面使用ajax访问servlet,最后处理响应值
方法2..提供一个servlet ,在servlet中调用getAllEmployees()
方法,把响应的值存入request作用域,在JSP页面中使用EL表达式获取值
当前标题:js调java代码 js调用java代码
本文来源:https://www.cdcxhl.com/article2/hhjcoc.html
成都网站建设公司_创新互联,为您提供网站收录、外贸建站、网站内链、移动网站建设、微信公众号、品牌网站制作
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联