我的代码就像
SJCL.js
function encrypt(data, key){
......
}
abcd.java
public String callJavascript(String data,String key)
{
// i want to call the encrypt method here with data,key value passing to it
}
有什么帮助吗???
仅使用java5
最佳答案
我确定您检查过这个:http://download.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html
您可能正在寻找的内容位于“调用脚本函数和方法”(从 java 调用“crypt()”的示例)
好吧,只是考虑一下可行性: 你总是可以将一个指向你的js文件的“java.io.Reader”传递给engine.eval(),但如果这是一个Web应用程序,那么你就会走向灾难。您最好将 sjcl.js 中的 encrypt() 功能保留在单独的文件中(例如 encrypt.js),including this file进入 sjcl.js。
然后,您可以读取 encrypt.js 一次并将其内容缓存在 java 类中的静态字符串中。然后,您可以将此字符串传递给 engine.eval(),而不会影响 I/O 性能。
关于java - 谁能给出一个完整的例子来说明如何使用java文件调用js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4363346/