素爱mt15i,夜色撩人 电影,西子奥的斯电梯尺寸
本文实例讲述了java编程中实现调用js方法。分享给大家供大家参考,具体如下:
/* * 加载脚本引擎,并在java中调用js方法 */ public void test2() { scriptenginemanager manager = new scriptenginemanager(); scriptengine engine = manager.getenginebyname("javascript"); try { string str="2&1"; double d = (double) engine.eval(str); integer i=d.intvalue(); system.out.println(i); } catch (scriptexception ex) { ex.printstacktrace(); } }
/* * 在java中调用js,jdk1.6中有加载js引擎类,然后由它来调用js方法。 * 并通过jdk平台给script的方法中的形参赋值 */ public void test(string name) { scriptenginemanager sem = new scriptenginemanager(); /* *sem.getenginebyextension(string extension)参数为js sem.getenginebymimetype(string mimetype) 参数为application/javascript 或者text/javascript sem.getenginebyname(string shortname)参数为js或javascript或javascript */ scriptengine se = sem.getenginebyname("js"); try { string script = "function say(){ return 'hello,'"+name+"; }"; se.eval(script); invocable inv2 = (invocable) se; string res=(string)inv2.invokefunction("say",name); system.out.println(res); } catch(exception e) { e.printstacktrace(); } }
/* * 演示如何将java中对象作为js中全局变量,同时演示将file类赋给脚本语言,并获得其属性。 */ public void testscriptvariables() { scriptenginemanager sem=new scriptenginemanager(); scriptengine engine=sem.getenginebyname("js"); file file=new file("c://1.txt"); engine.put("f", file); try { engine.eval("println('path:'+f.getpath())");//无法使用alert方法 } catch (scriptexception e) { e.printstacktrace(); } }
/* * 演示如何在java中如何通过线程来启动一个js方法 */ public void testscriptinterface() throws scriptexception { scriptenginemanager sem=new scriptenginemanager(); scriptengine engine=sem.getenginebyname("js"); string script="var obj=new object();obj.run=function(){println('test thread')}"; engine.eval(script); object obj=engine.get("obj");//获取js中对象 invocable inv=(invocable)engine; runnable r=inv.getinterface(obj,runnable.class); thread t=new thread(r); t.start(); }
更多关于java算法相关内容感兴趣的读者可查看本站专题:《java字符与字符串操作技巧总结》、《java数组操作技巧总结》、《java数学运算技巧总结》、《java编码操作技巧总结》和《java数据结构与算法教程》
希望本文所述对大家java程序设计有所帮助。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
浅析我对 String、StringBuilder、StringBuffer 的理解
使用IDEA搭建SSM框架的详细教程(spring + springMVC +MyBatis)
Springboot整合freemarker 404问题解决方案
引入mybatis-plus报 Invalid bound statement错误问题的解决方法
网友评论