时间:2021-05-20
简介 Nashorn
Nashorn 一个 javascript 引擎。
从JDK 1.8开始,Nashorn取代Rhino(JDK 1.6, JDK1.7)成为Java的嵌入式JavaScript引擎。Nashorn完全支持ECMAScript 5.1规范以及一些扩展。
它使用基于JSR 292的新语言特性,其中包含在JDK 7中引入的 invokedynamic,将JavaScript编译成Java字节码。
与先前的Rhino实现相比,这带来了2到10倍的性能提升。
使用方式
1. 编写JavaScript脚本
列:JavaScript方法使用Java对象执行方法获取返回值。
该脚本变量定义为 String script1;
2. 创建JavaScript容器用户存储脚本 ScirptContainer.java
public class ScirptContainer { public static ScriptEngine engine;//脚本引擎 static { ScriptEngineManager manager = new ScriptEngineManager();//脚本引擎管理 engine = manager.getEngineByName("nashorn");//获取nashorn脚本引擎 engine.getContext().getWriter();//获取正文并且写入 } private ConcurrentHashMap<Integer, CompiledScript> scripts = new ConcurrentHashMap<>();//脚本存储容器 public CompiledScript getCompiledScript(String script) throws ScriptException{ //判断脚本是否为空 if(script == null || "".equals(script)){ throw new ScriptException("JavaScript empty"); } //获取脚本Hash int hashCode = script.hashCode(); //从容器中获取脚本 CompiledScript compiledScript = scripts.get(hashCode); if(compiledScript == null){ //容器中无脚本创建脚本对象 Compilable compilable = (Compilable) engine; //编译JavaScript脚本 compiledScript = compilable.compile(script); //脚本对象存入容器中 scripts.put(hashCode, compiledScript); } return compiledScript; } }3. Java执行JavaScript脚本
注意事项:
到此这篇关于Java中使用JavaScript脚本的方法步骤的文章就介绍到这了,更多相关Java使用JavaScript脚本内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
作者: SimpleWu
出处:https:///SimpleWu/p/12598442.html
本站使用「SimpleWu BY 4.0」创作共享协议,转载请在文章明显位置注明作者及出处。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
误解一:JavaScript是Java的简易版JavaScript是一种在网页中使用的脚本语言,它的原名叫做LiveScript。JavaScript的语法与J
介绍jsPDF是一个使用Javascript语言生成PDF的开源库。你可以在Firefox插件,服务端脚本或是浏览器脚本中使用它。客户端Safari和iPhon
RequireJS介绍RequireJS是一个JavaScript模块加载器。它非常适合在浏览器中使用。使用RequireJS加载模块化脚本将提高代码的加载速度
制作步骤:一,引入prefixfree.js脚本下面代码中使用了CSS3无前缀脚本prefixfree.js,可以省去CSS3中前缀“-moz&rd
为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制。只要调用addJavasc