Java那些事之执行js

这一阵一直在使用java,其中遇到了一个有意思的事情。就是要在java中执行一段js代码。之前从来没有用过,只知道C#是可以做到的,当然java也一定可以了。于是去网上逛了一下,找到了比较不错的方法。

下面给大家分享一下吧,各位要是有更好的方法,一定要教教我~

比如我要执行本地工程目录下data文件夹下test.js这里面的test函数的代码,那么首先我要把这个文件准备好,然后就可以写代码啦

代码如下:

    /**
     * 执行js函数,得到需要的值的值
     * 
@param paras
     * 
@return
     * 
@throws ScriptException
     * 
@throws FileNotFoundException
     * 
@throws NoSuchMethodException
     
*/
    
public static String ExcuteJs(String paras) throws ScriptException,
    FileNotFoundException, NoSuchMethodException 
    {
        ScriptEngineManager engineManager 
= new ScriptEngineManager();  
        ScriptEngine engine 
= engineManager.getEngineByName("JavaScript"); //得到脚本引擎
        engine.eval(new java.io.FileReader("data/test.js"));  
        Invocable inv 
= (Invocable)engine;  
        Object a 
= inv.invokeFunction("test", paras );  
        CheckMethods.PrintDebugMessage(a.toString());
        
return a.toString();
    }

 就这么简单,就可以了,还是很简单的。

posted @ 2011-07-01 13:38  ~大器晚成~  阅读(12970)  评论(0编辑  收藏  举报