JSR 233 Java6脚本支持(groovy版)
直接上代码, 详细代码参见
public class Jsr233 { public static void main(String[] args) throws ScriptException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine eng = manager.getEngineByName("groovy"); eng.eval("def say(){ println 'hello' }"); Invocable invocable = (Invocable)eng; BusinessService businessService = invocable.getInterface(BusinessService.class); businessService.say(); } } interface BusinessService{ void say(); }
这是Java6原生支持的特性,javascript是默认支持的(使用Rhino实现),如果需要在java中加入脚本语言支持,这是很好的一种方式;
我自己也使用过js集成,就是在写自动化集成测试(API)用例时,需要加密(前端的js加密算法),我直接用这种方法加在java中,真心方便!