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 @   ~大器晚成~  阅读(12970)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示